您现在的位置是:首页 >

分页是由什么完成的 ASP.NET中自定义DataGrid分页设置的实现

火烧 2021-05-31 18:00:20 1076
ASP.NET中自定义DataGrid分页设置的实现   我实现了DataGrid的个性化分页 现在把代码贴出来朋友们参考 同时在这个功能的实现过程 参考了 飞刀 从国外翻译的一篇文章   先定义AS

ASP.NET中自定义DataGrid分页设置的实现  

  我实现了DataGrid的个性化分页 现在把代码贴出来朋友们参考 同时在这个功能的实现过程 参考了 飞刀 从国外翻译的一篇文章

  先定义ASPX页面 注意AllowCustomPaging要设为 False

<body><form id= DictList method= post runat= server ><TABLE style= BORDER COLLAPSE: collapse cellSpacing= width= % border= ><TR><td bgColor= #c c >信息 <FONT face= Arial color= #ffffff >数据维护</FONT></td></TR><tr><td><FONT face= 宋体 ></FONT></td></tr><tr><td><asp:datagrid id= MyDataGrid runat= server Width= % PageSize= AllowPaging= True AutoGenerateColumns= False DataKeyField= FDictid ><SelectedItemStyle BackColor= #FFC ></SelectedItemStyle><HeaderStyle BackColor= #C C ></HeaderStyle><Columns><asp:ButtonColumn Text= 选择 HeaderText= 选择 CommandName= Select ><HeaderStyle Font Bold= True HorizontalAlign= Center Width= % ></HeaderStyle><ItemStyle Font Bold= True HorizontalAlign= Center ></ItemStyle></asp:ButtonColumn><asp:BoundColumn DataField= FDictID SortExpression= FDictID asc HeaderText= 标识号 ><HeaderStyle Width= % ></HeaderStyle></asp:BoundColumn><asp:BoundColumn DataField= FNameCn SortExpression= FNameCn asc HeaderText= 名称 ><HeaderStyle Width= % ></HeaderStyle></asp:BoundColumn><asp:BoundColumn DataField= FNameEn SortExpression= FNameEn asc HeaderText= 英文名称 ><HeaderStyle Width= % ></HeaderStyle></asp:BoundColumn><asp:BoundColumn DataField= FNote SortExpression= FNote asc HeaderText= 描叙 ><HeaderStyle Width= % ></HeaderStyle></asp:BoundColumn></Columns><PagerStyle Visible= False ></PagerStyle></asp:datagrid></td></tr></TABLE><TABLE style= BORDER COLLAPSE: collapse cellSpacing= width= % bgColor= #ff border= ><TR><td align= right ><asp:linkbutton id= btnFirst runat= server CommandArgument= fist >首页</asp:linkbutton>  <asp:linkbutton id= btnPrev runat= server Width= px CommandArgument= prev >上一页</asp:linkbutton>  <asp:linkbutton id= btnNext runat= server CommandArgument= next >下一页</asp:linkbutton>  <asp:linkbutton id= btnLast runat= server CommandArgument= last >末页</asp:linkbutton>  <asp:label id= lblCurrentIndex runat= server ></asp:label>/<asp:label id= lblPageCount runat= server ></asp:label>   跳转到<asp:TextBox id= txtGoPage runat= server Width= px CssClass= textbox ></asp:TextBox><asp:Button id= btnGo runat= server Text= GO CssClass= button Width= px ></asp:Button></td></TR></TABLE></form>

  codebehind主要功能部分代码

分页是由什么完成的 ASP.NET中自定义DataGrid分页设置的实现

private void Page_Load(object sender System EventArgs e){// 在此处放置用户代码以初始化页面myConnection = new SqlConnection(System Configuration ConfigurationSettings AppSettings[ ConnString ]);

if (!IsPostBack)BindGrid();}

public void BindGrid(){string strSql = SELECT * FROM t_dict ;SqlDataAdapter myCommand = new SqlDataAdapter(strSql myConnection);DataSet ds = new DataSet();myCommand Fill(ds t_dict );MyDataGrid DataSource=ds Tables[ t_dict ] DefaultView;MyDataGrid DataBind(); ShowStatsPage();}

private void PagerButtonClick(object sender System EventArgs e){//获得LinkButton的参数值String arg = ((LinkButton)sender) CommandArgument;

switch(arg){case ( next ):if (MyDataGrid CurrentPageIndex < (MyDataGrid PageCount ))MyDataGrid CurrentPageIndex ++;break;case ( prev ):if (MyDataGrid CurrentPageIndex > )MyDataGrid CurrentPageIndex ;break;case ( fist ):MyDataGrid CurrentPageIndex= ;break;case ( last ):MyDataGrid CurrentPageIndex = (MyDataGrid PageCount );break;default://本页值MyDataGrid CurrentPageIndex = Convert ToInt (arg);break;}BindGrid();}

void ShowStatsPage(){//显示页面信息lblCurrentIndex Text = [<font color= blue >当前为第 + ((int)MyDataGrid CurrentPageIndex+ ) + 页</font>] ;lblPageCount Text = [<font color= blue >共 + MyDataGrid PageCount + 页</font>] ;}

private void MyDataGrid_PageIndexChanged(object source System Web UI WebControls DataGridPageChangedEventArgs e){//处理按下数字的方法MyDataGrid CurrentPageIndex = e NewPageIndex;BindGrid();}

lishixinzhi/Article/program/net/201311/15732  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码