| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- using System;
- using System.Data;
- using System.Configuration;
- using System.Collections;
- using System.Collections.Specialized;
- using System.Linq;
- using System.Web;
- using System.Web.Security;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.Web.UI.WebControls.WebParts;
- using System.Web.UI.HtmlControls;
- using System.Xml.Linq;
- using System.Web.DynamicData;
- public partial class GridViewPager : System.Web.UI.UserControl {
- private GridView _gridView;
- protected void Page_Load(object sender, EventArgs e) {
- Control c = Parent;
- while (c != null) {
- if (c is GridView) {
- _gridView = (GridView)c;
- break;
- }
- c = c.Parent;
- }
- }
- protected void TextBoxPage_TextChanged(object sender, EventArgs e) {
- if (_gridView == null) {
- return;
- }
- int page;
- if (int.TryParse(TextBoxPage.Text.Trim(), out page)) {
- if (page <= 0) {
- page = 1;
- }
- if (page > _gridView.PageCount) {
- page = _gridView.PageCount;
- }
- _gridView.PageIndex = page - 1;
- }
- TextBoxPage.Text = (_gridView.PageIndex + 1).ToString();
- }
- protected void DropDownListPageSize_SelectedIndexChanged(object sender, EventArgs e) {
- if (_gridView == null) {
- return;
- }
- DropDownList dropdownlistpagersize = (DropDownList)sender;
- _gridView.PageSize = Convert.ToInt32(dropdownlistpagersize.SelectedValue);
- int pageindex = _gridView.PageIndex;
- _gridView.DataBind();
- if (_gridView.PageIndex != pageindex) {
- //if page index changed it means the previous page was not valid and was adjusted. Rebind to fill control with adjusted page
- _gridView.DataBind();
- }
- }
- protected void Page_PreRender(object sender, EventArgs e) {
- if (_gridView != null) {
- LabelNumberOfPages.Text = _gridView.PageCount.ToString();
- TextBoxPage.Text = (_gridView.PageIndex + 1).ToString();
- DropDownListPageSize.SelectedValue = _gridView.PageSize.ToString();
- }
- }
- }
|