Custom pagination Using Asp.Net & C#





0
Date Submitted Thu. Mar. 19th, 2009 7:40 AM
Revision 1 of 1
Scripter mycodeofshailendra
Tags ASP | custom | Pagination | Using
Comments 0 comments
Method to Custom pagination Using Asp.Net & C#


public string Navigation(string url, int max_links, int curr_pages, int NUM_ROWS, int total_rows, bool back_forward, string css_current)
        {
            string separator = "|";
            double d = (Convert.ToDouble(total_rows) / Convert.ToDouble(NUM_ROWS));
            //double operator /(double x, double y);
            int Round = Convert.ToInt32(Math.Round(d, 0, MidpointRounding.AwayFromZero));
            int all_pages = Round - 1;
            string navi_string = "";
            int start = 0;
            int end = 0;
            int forward = 0;
            int backward = 0;
            if (back_forward == false)
            {
                max_links = (max_links < 2) ? 2 : max_links;

            }
            if (curr_pages <= all_pages && curr_pages >= 0)
            {
                if (curr_pages > (max_links / 2))
                {
                    start = (curr_pages - (max_links / 2) > 0) ? curr_pages - (max_links / 2) : 1;
                    end = curr_pages + (max_links / 2);
                    if (end >= all_pages)
                    {
                        end = all_pages + 1;
                        start = (all_pages - (max_links - 1) > 0) ? all_pages - (max_links - 1) : 1;
                    }
                }
                else
                {
                    start = 0;
                    end = (all_pages >= max_links) ? max_links : all_pages + 1;
                }
                if (all_pages >= 1)
                {
                    forward = curr_pages + 1;
                    backward = curr_pages - 1;
                    if (curr_pages > 0)
                    {
                        navi_string = "<a href=\"" + url + "page=" + backward + "\">&lt;&lt;</a>&nbsp;";
                    }
                    else
                    {
                        navi_string = "&lt;&lt;&nbsp;";
                    }
                    if (!back_forward)
                    {
                        for (int a = start + 1; a <= end; a++)
                        {
                            int theNext = a - 1;
                            if (theNext != curr_pages)
                            {
                                navi_string += "<a href=\"" + url + "page=" + theNext + "\">";
                                navi_string += a.ToString() + "</a>";
                                navi_string += (theNext < (end - 1)) ? separator : "";

                            }
                            else
                            {
                                navi_string += (css_current != "") ? "<span class=\"" + css_current + "\">" + a.ToString() + "</span>" : a.ToString();
                                navi_string += (theNext < (end - 1)) ? separator : "";
                            }

                        }
                    }
                    navi_string += (curr_pages < all_pages) ? "&nbsp;<a href=\"" + url + "page=" + forward.ToString() + "\">&gt;&gt;</a>" : "&nbsp;&gt;&gt;";
                }

            }
            return navi_string;
        }

 

shailendra bhadange

shailendra-problemsolution.blogspot.com/
Shailendra Bhadange

Comments

There are currently no comments for this snippet.

Voting

Votes Up


Votes Down