想要自己写DataGrid的分页,给些帮助最好是由例子可以参考,谢谢了
解决方案 »
- 开发一个网站有多个网页,怎样让用户登陆后在A网页查询,用户跳到B网页后重新调回A网页,A网页显示的是上次查询的结果?(相当于记住上次对网页操作结果)
- DIV+CSS布局问题!!
- 当两个用户同时尝试更改数据库中的相同数据时会引发并发异常,如何处理
- 类库中怎样使用Cache
- 程序没错,但是有溢出漏洞,我晕,谁有好办法修补不?查出位置出可以啊
- 怎么获得当前用户的名称和IP
- Request的小问题!!!
- 在线等!急!解决马上给分!如何控制面版布局?
- 请问:如何在ASP.NET中通过输入数据在数据库中查找相应表,并显示全表。谢谢!
- 救命啊!!!怎么在.net里面把把数据传给普通的html控件
- 如何取得网页地址的URL与URL的下级目录名?
- 我想要在地址栏看到iframe的地址
大概就这样 给段代码参考吧!前台代码(aspx) 定义了些分页的控件:
<table border="0" id="LabelInfo" runat="server">
<tr>
<td class="text12" align="center"><font color="#666666"><FONT face="宋体"><asp:linkbutton id="btnFirst" runat="server" CommandArgument="first" CausesValidation="False">首页</asp:linkbutton>
<asp:linkbutton id="btnPre" runat="server" CommandArgument="prev" CausesValidation="False">前一页</asp:linkbutton>
<asp:linkbutton id="btnNext" runat="server" CommandArgument="next" CausesValidation="False">后页</asp:linkbutton>
<asp:linkbutton id="btnLast" runat="server" CommandArgument="last" CausesValidation="False">末页</asp:linkbutton>
<asp:textbox id="txtGoPage" runat="server" Width="48px"></asp:textbox><asp:button id="btnGo" runat="server" CommandArgument="Go" CausesValidation="False" Text="Go"></asp:button>
<asp:label id="lblCurrentIndex" runat="server">当前页数:</asp:label>
<asp:label id="lblPageCount" runat="server">总页数:</asp:label></FONT> </font>
</td>
</tr>
</TR></table>
后台cs:
private void PageChange_Click(object sender, System.EventArgs e)
{
string cmdType = "";
if(sender.GetType().Name == "LinkButton")
{
cmdType = ((LinkButton)sender).CommandArgument;
}
else if(sender.GetType().Name == "Button")
{
cmdType = ((Button)sender).CommandArgument;
} switch(cmdType)
{
case "first":
if(txtPageSize.Text.Trim() != "")
DataBind(pagesize,1);
break;
case "prev":
if(txtPageSize.Text.Trim() != "")
{
if(int.Parse(lblCurrentIndex.Text.Trim().Split(':')[1]) != 1)
DataBind(pagesize,int.Parse(lblCurrentIndex.Text.Trim().Split(':')[1])-1);
}
break;
case "next":
if(txtPageSize.Text.Trim() != "")
{
if(int.Parse(lblCurrentIndex.Text.Trim().Split(':')[1]) < int.Parse(lblPageCount.Text.Trim().Split(':')[1]))
DataBind(pagesize,int.Parse(lblCurrentIndex.Text.Trim().Split(':')[1])+1);
}
break;
case "last":
if(txtPageSize.Text.Trim() != "")
DataBind(pagesize,int.Parse(lblPageCount.Text.Trim().Split(':')[1]));
break;
case "Go":
if(txtGoPage.Text.Trim() != "")
DataBind(pagesize,Convert.ToInt32(this.txtGoPage.Text.Trim()));
break;
}
}DataBind()这个方法是实现数据绑定的
private void DataBind(int argpagesize,int argcurrentpage)
{
string phitemcd = this.ddlPhItemName.SelectedValue;
FIFARewardItem itemObj = new FIFARewardItem();
dgList.DataSource = itemObj.ListPhItemWinner(argpagesize,argcurrentpage,phitemcd,out pagecount);
dgList.DataBind();
IniLabelInfo(argcurrentpage,pagecount);
}大概思路就这样 根据你自己的需求再看吧