dataGrid控件的自定义分页(已调试通过)

本文介绍了一个ASP.NET中自定义DataGrid分页控件的方法,包括首页、末页链接按钮及页数下拉列表的添加,并实现了点击事件处理及页面索引改变时的数据绑定更新。


privatevoidDataGNews_ItemCreated(objectsender,System.Web.UI.WebControls.DataGridItemEventArgse)
...{
if(e.Item.ItemType==ListItemType.Pager)
...{

LinkButtonlb
=newLinkButton();
lb.Text
="首页";
e.Item.Controls[
0].Controls.AddAt(0,lb);
LinkButtonend
=newLinkButton();
end.Text
="末页";
e.Item.Controls[
0].Controls.Add(end);
lb.Click
+=newEventHandler(lb_Click);//添加事件处理程序
end.Click+=newEventHandler(end_Click);
HyperLinkzong
=newHyperLink();
zong.Text
=""+this.DataGNews.PageCount+"";
e.Item.Controls[
0].Controls.Add(zong);
HyperLinkper
=newHyperLink();
per.Text
="15条/页 ";
e.Item.Controls[
0].Controls.Add(per);
HyperLinkcur
=newHyperLink();
cur.Text
="当前页是"+(Convert.ToInt32(this.DataGNews.CurrentPageIndex)+1)+"页跳转到";
e.Item.Controls[
0].Controls.Add(cur);
DropDownListddl
=newDropDownList();
ddl.AutoPostBack
=true;//设置DropDownList控件的autopostback属性(自动回发)
for(inti=0;i<this.DataGNews.PageCount;i++)
...{
ddl.Items.Add(
newListItem(""+(i+1)+"",(i+1).ToString()));
}

ddl.SelectedIndexChanged
+=newEventHandler(ddl_SelectedIndexChanged);//添加下拉列表框的"选择改变时"所触发事件SelectedIndexChanged
e.Item.Controls[0].Controls.Add(ddl);
}

}

//事件处理程序
publicvoidlb_Click(objectsender,System.EventArgse)
...{
this.DataGNews.CurrentPageIndex=0;
NewsBind();
}

//事件处理程序

publicvoidend_Click(objectsender,System.EventArgse)
...{
this.DataGNews.CurrentPageIndex=this.DataGNews.PageCount-1;
NewsBind();
}

privatevoidDataGNews_PageIndexChanged(objectsource,System.Web.UI.WebControls.DataGridPageChangedEventArgse)
...{
this.DataGNews.CurrentPageIndex=e.NewPageIndex;
NewsBind();
}

//事件处理程序
publicvoidddl_SelectedIndexChanged(objectsender,EventArgse)
...{
stringval=this.ddl.SelectedValue.ToString();
//Response.Write("<script>alert('"+val+"')</script>");
this.DataGNews.CurrentPageIndex=int.Parse(val)-1;
this.NewsBind();
this.ddl.SelectedValue=(int.Parse(val)).ToString();
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值