<%@ import namespace="system.data" %>
<html>
<script language="c#" runat="server">
icollection createdatasource() {
datatable dt = new datatable();
datarow dr;
dt.columns.add(new datacolumn("integervalue", typeof(int32)));
dt.columns.add(new datacolumn("stringvalue", typeof(string)));
dt.columns.add(new datacolumn("datetimevalue", typeof(string)));
dt.columns.add(new datacolumn("boolvalue", typeof(bool)));
for (int i = 0; i < 200; i++) {
dr = dt.newrow();
dr[0] = i;
dr[1] = "item " + int32.tostring(i);
dr[2] = datetime.now.toshortdatestring();
dr[3] = (i % 2 != 0) ? true : false;
dt.rows.add(dr);
}
dataview dv = new dataview(dt);
return dv;
}
void page_load(object sender, eventargs e) {
if (chk1.checked) {
mydatagrid.pagerstyle.visible=true;
}
else {
mydatagrid.pagerstyle.visible=false;
}
bindgrid();
}
void pagerbuttonclick(object sender, eventargs e) {
//used by external paging ui
string arg = ((linkbutton)sender).commandargument;
switch(arg)
{
case ("next"):
if (mydatagrid.currentpageindex < (mydatagrid.pagecount - 1))
mydatagrid.currentpageindex ++;
break;
case ("prev"):
if (mydatagrid.currentpageindex > 0)
mydatagrid.currentpageindex --;
break;
case ("last"):
mydatagrid.currentpageindex = (mydatagrid.pagecount - 1);
break;
default:
//page number
mydatagrid.currentpageindex = arg.toint32();
break;
}
bindgrid();
}
void mydatagrid_page(object sender, datagridpagechangedeventargs e) {
//used by built-in pager. currentpageindex already set
bindgrid();
}
void bindgrid() {
mydatagrid.datasource = createdatasource();
mydatagrid.databind();
showstats();
}
void showstats() {
lblcurrentindex.text = "currentpageindex is " + mydatagrid.currentpageindex;
lblpagecount.text = "pagecount is " + mydatagrid.pagecount;
}
</script>
<body>
<h3><font face="verdana">providing alternate paging ui</font></h3>
<form runat=server>
<asp:datagrid id="mydatagrid" runat="server"
allowpaging="true"
pagesize="10"
pagerstyle-mode="numericpages"
pagerstyle-horizontalalign="right"
onpageindexchanged="mydatagrid_page"
bordercolor="black"
borderwidth="1"
gridlines="both"
cellpadding="3"
cellspacing="0"
font-name="verdana"
font-size="8pt"
headerstyle-backcolor="#aaaadd"
alternatingitemstyle-backcolor="#eeeeee"
/>
<p>
<asp:linkbutton id="btnprev" runat="server"
text="previous page"
commandargument="prev"
forecolor="navy"
font-name="verdana" font-size="8pt"
onclick="pagerbuttonclick"
/>
<asp:linkbutton id="btnnext" runat="server"
text="next page"
commandargument="next"
forecolor="navy"
font-name="verdana" font-size="8pt"
onclick="pagerbuttonclick"
/>
<asp:linkbutton id="btnpage8" runat="server"
text="go to page 8"
commandargument="7"
forecolor="navy"
font-name="verdana" font-size="8pt"
onclick="pagerbuttonclick"
/>
<asp:linkbutton id="btnfirst" runat="server"
text="go to the first page"
commandargument="0"
forecolor="navy"
font-name="verdana" font-size="8pt"
onclick="pagerbuttonclick"
/>
<asp:linkbutton id="btnlast" runat="server"
text="go to the last page"
commandargument="last"
forecolor="navy"
font-name="verdana" font-size="8pt"
onclick="pagerbuttonclick"
/>
<p>
<asp:checkbox id="chk1" runat="server"
text="show built-in pager"
font-name="verdana"
font-size="8pt"
autopostback="true"
/>
<p>
<table bgcolor="#eeeeee" cellpadding="6"><tr><td nowrap><font face="verdana" size="-2">
<asp:label id="lblcurrentindex" runat="server" /><br>
<asp:label id="lblpagecount" runat="server" /><br>
</font></td></tr></table>
</form>
</body>
</html>
作者:jspfuns()
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器