|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
由于ASP提供的是一对多的服务,所以用户的一些特殊需求很难得到满足。分页|数据|显现上面是个Repeater显现数据分页的例子
我在做时分碰到的成绩给人人提一下刚入手下手我利用DataReader做数据源,是不可,后才换DataSet
在设置分页的时分必定要弄分明以后页,假如你把以后页设置成1,那末他就从第二页显现数据了,由于它确当前页是从0入手下手的,而我们显现以后页时分是从1入手下手的
在对照是不是到达总页数之前必定要先也给PS设置数据源,我就是先用ps.CurrentPageIndex==ps.PageCount-1反省是不是在最初一页,然后再ps.DataSource=ds.Tables["authors"].DefaultView;设置数据源的,了局分页一向有成绩.
呵呵,这几个成绩弄了我半天。多是我太菜了吧,学.NET还没多久呢。
usingSystem;
usingSystem.Collections;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Web;
usingSystem.Web.SessionState;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
namespacetest
{
///<summary>
///Repeater的择要申明。
///</summary>
publicclassRepeater:System.Web.UI.Page
{
protectedSystem.Web.UI.WebControls.PanelPanel1;
protectedSystem.Web.UI.WebControls.LabelLabel1;
protectedSystem.Web.UI.WebControls.LabellbCurPage;
protectedSystem.Web.UI.WebControls.ButtonButton1;
protectedSystem.Web.UI.WebControls.ButtonButton2;
protectedSystem.Web.UI.WebControls.RepeaterRepeater1;
privatevoidPage_Load(objectsender,System.EventArgse)
{
//在此处安排用户代码以初始化页面
if(!this.IsPostBack)
{
this.lbCurPage.Text="1";
this.BindToRepeater();
}
}
privatevoidBindToRepeater()
{
SqlConnectioncon=newSqlConnection("datasource=.;database=pubs;uid=sa;pwd=123a456b");
//SqlCommandcmd=newSqlCommand("select*fromauthors",con);
//con.Open();
//SqlDataReaderdr;
//dr=cmd.ExecuteReader();
SqlDataAdapterda=newSqlDataAdapter("select*fromauthors",con);
DataSetds=newDataSet();
da.Fill(ds,"authors");
PagedDataSourceps=newPagedDataSource();
ps.AllowPaging=true;
ps.PageSize=5;
this.Repeater1.DataSource=ps;
ps.CurrentPageIndex=Convert.ToInt32(this.lbCurPage.Text)-1;
ps.DataSource=ds.Tables["authors"].DefaultView;
this.Button1.Enabled=true;
this.Button2.Enabled=true;
if(ps.CurrentPageIndex==0)
{
this.Button1.Enabled=false;
}
if(ps.CurrentPageIndex==ps.PageCount-1)
{
this.Button2.Enabled=false;
}
this.Repeater1.DataBind();
}
#regionWeb窗体计划器天生的代码
overrideprotectedvoidOnInit(EventArgse)
{
//
//CODEGEN:该挪用是ASP.NETWeb窗体计划器所必须的。
//
InitializeComponent();
base.OnInit(e);
}
///<summary>
///计划器撑持所需的办法-不要利用代码编纂器修正
///此办法的内容。
///</summary>
privatevoidInitializeComponent()
{
this.Button1.Click+=newSystem.EventHandler(this.Button1_Click);
this.Button2.Click+=newSystem.EventHandler(this.Button2_Click);
this.Load+=newSystem.EventHandler(this.Page_Load);
}
#endregion
privatevoidButton1_Click(objectsender,System.EventArgse)
{
this.lbCurPage.Text=Convert.ToString(Convert.ToInt32(this.lbCurPage.Text)-1);
this.BindToRepeater();
}
privatevoidButton2_Click(objectsender,System.EventArgse)
{
this.lbCurPage.Text=Convert.ToString(Convert.ToInt32(this.lbCurPage.Text)+1);
this.BindToRepeater();
}
}
}
</p>实现规模效益。与传统的用户拥有硬件软件所有权和使用权以及传统的应用服务商提供一对一的服务模式不同,ASP拥有应用系统所有权,用户拥有使用权,应用系统集中放在ASP的数据中心中,集中管理,分散使用,以一对多的租赁的形式为众多用户提供有品质保证的应用技术服务,实现规模效益。 |
|