通用分页控件(DataGrid,DataList,Repeater都可以用它来分页)
<iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/46860.html" frameborder="0" width="468" scrolling="no" height="60"></iframe>

scriptlanguage="javascript">
functioncallButtonEvent()


{
varkeycode=window.event.keyCode;
if(keycode==13)


{
if(check()==true)


{
event.cancelBubble=true;
event.returnValue=false;
document.getElementById('btnGo.ClientID%>').click();
}
}
}
functioncheck()


{
varcount=parseInt(document.getElementById('lblTotal.ClientID%>').outerText);
vartxt=document.getElementById('txtCurrentPage.ClientID%>').value;
varcur=parseInt(txt);
if((cur|NaN)==0)


{
alert('Inputpagemustformatasinteger.');
event.cancelPostBack=true;
returnfalse;
}
if(cur>count||cur1)


{
alert('Inputpagenooutofrange.');
event.cancelPostBack=true;
returnfalse;
}
}
script>
TABLEID="Table1"CELLSPACING="0"CELLPADDING="0"WIDTH="100%"BORDER="0">
colgroup>
colwidth="400">
colwidth="50">
colwidth="50">
colwidth="40">
colwidth="20">
colwidth="40">
colwidth="40">
colwidth="50">
colwidth="70">
colgroup>
TRalign="right">
td>td>
TD>asp:LinkButtonid="btnFirstPage"runat="server"CommandArgument="First">第一页asp:LinkButton>TD>
TD>asp:LinkButtonid="btnPrevPage"runat="server"CommandArgument="Prev">上一页asp:LinkButton>TD>
TD>ASP:TEXTBOXID="txtCurrentPage"RUNAT="server"MAXLENGTH="3"Width="40">0ASP:TEXTBOX>TD>
TD>ASP:LABELID="labOf"RUNAT="server">ofASP:LABEL>TD>
TD>ASP:LABELID="lblTotal"RUNAT="server">0ASP:LABEL>TD>
TD>ASP:BUTTONID="btnGo"RUNAT="server"TEXT="转到"COMMANDARGUMENT="Go"ToolTip="转到">ASP:BUTTON>TD>
TD>asp:LinkButtonid="btnNextPage"runat="server"CommandArgument="Next">下一页asp:LinkButton>TD>
TD>asp:LinkButtonid="btnLastPage"runat="server"CommandArgument="Last">最后一页asp:LinkButton>TD>
TR>
TABLE>
publicclassPager:System.Web.UI.UserControl


{
protectedSystem.Web.UI.WebControls.LabellblTotal;
protectedSystem.Web.UI.WebControls.LabellabOf;
protectedSystem.Web.UI.WebControls.TextBoxtxtCurrentPage;
protectedSystem.Web.UI.WebControls.ButtonbtnGo;
protectedSystem.Web.UI.WebControls.LinkButtonbtnFirstPage;
protectedSystem.Web.UI.WebControls.LinkButtonbtnPrevPage;
protectedSystem.Web.UI.WebControls.LinkButtonbtnNextPage;
protectedSystem.Web.UI.WebControls.LinkButtonbtnLastPage;
intsize=10;//可以在web.config中配置
publiceventSystem.EventHandlerNavigationClick;

privatevoidPage_Load(objectsender,System.EventArgse)


{
this.txtCurrentPage.Attributes.Add("onkeypress","callButtonEvent();");
this.btnGo.Attributes.Add("onclick","check();");
if(!this.IsPostBack)


{
SetStyle();
SetEnable();
}
}


WebFormDesignergeneratedcode#regionWebFormDesignergeneratedcode
overrideprotectedvoidOnInit(EventArgse)


{
//
//CODEGEN:ThiscallisrequiredbytheASP.NETWebFormDesigner.
//
InitializeComponent();
base.OnInit(e);
this.btnFirstPage.Click+=newSystem.EventHandler(this.btnGo_Click);
this.btnPrevPage.Click+=newSystem.EventHandler(this.btnGo_Click);
this.btnNextPage.Click+=newSystem.EventHandler(this.btnGo_Click);
this.btnLastPage.Click+=newSystem.EventHandler(this.btnGo_Click);
this.btnGo.Click+=newSystem.EventHandler(this.btnGo_Click);
}


/**////<summary></summary>
///RequiredmethodforDesignersupport-donotmodify
///thecontentsofthismethodwiththecodeeditor.
///
privatevoidInitializeComponent()


{
this.Load+=newSystem.EventHandler(this.Page_Load);

}
#endregion


btnGo_Click#regionbtnGo_Click
privatevoidbtnGo_Click(objectsender,System.EventArgse)


{
LinkButtonlinkbtn=senderasLinkButton;
if(null==linkbtn)//button


{
Buttonbtn=senderasButton;
if(null==btn)


{
return;
}
else


{
intselPage=-1;
try


{
selPage=Int32.Parse(txtCurrentPage.Text);
}
catch


{
selPage=-1;
}
if(selPage>0&&selPagePageCount)


{
ViewState["CurrentPageIndex"]=selPage;
}
else


{
return;
}
}
}
else//linkbutton


{
switch(linkbtn.CommandArgument.Trim())


{
case"First":
ViewState["CurrentPageIndex"]=1;
break;
case"Prev":
ViewState["CurrentPageIndex"]=(CurrentPageIndex>1)?CurrentPageIndex-1:1;
break;
case"Next":
ViewState["CurrentPageIndex"]=(PageCount>CurrentPageIndex)?CurrentPageIndex+1:PageCount;
break;
case"Last":
ViewState["CurrentPageIndex"]=PageCount;
break;
default:
break;
}
}
SetEnable();//设置显示样式
if(NavigationClick!=null)//调用事件


{
NavigationClick(sender,e);
}
}
#endregion


SetStyle#regionSetStyle
privatevoidSetStyle()

1.建立用户控件Pager.ascx
1.1 html
1.2 cs代码