详细讲解DataList自定义分页的方法(3)
触发分页按钮的事件
Code
protected void PagerButton_Click(object sender, EventArgs e)
{
string arg = ((LinkButton)sender).CommandArgument.ToString().ToLower();
int pageIndex = int.Parse(ViewState["PageIndex"].ToString());
switch (arg)
{
case "first":
pageIndex = 0;
break;
case "last":
int itemCount = this.GetDataSource().Rows.Count;
int totalPage = itemCount % this.ListSize == 0 ? itemCount / ListSize : itemCount / (ListSize + 1);
pageIndex = totalPage - 1;
break;
case "prev":
pageIndex = pageIndex - 1;
break;
case "next":
pageIndex = pageIndex + 1;
break;
}
ViewState["PageIndex"] = pageIndex;
this.BindGrid();
ddlPage.SelectedIndex = pageIndex;
}
触发下拉框的事件
Code
protected void ddlPage_SelectedIndexChanged(object sender, EventArgs e)
{
ViewState["PageIndex"] = Int32.Parse(ddlPage.SelectedValue)-1;
this.BindGrid();
ddlPage.SelectedIndex = Int32.Parse(ViewState["PageIndex"].ToString());
}
代码很简单,就不解释了...要注意的是,下拉框要在页面载入的时候初始化,不然触发不到下拉框的事件.
- 上一篇:C#简单代码实现下载远程文件到本地
- 下一篇:递归实现TreeView数据绑定代码