据说这个没有什么用,但是把这个搞懂了对datagri和datalist和有帮助,事业就笔记一下了。
----------控件清单---------
panel panel1;
button button1;
button button2;
label label1;
label label2;
label label3;
label label4;
label label5;
repeater repeater1;
--------------------------.cs页-----------------------------------
private void page_load(object sender, system.eventargs e)
{
if(!this.ispostback)
{
this.label1.text="1";
this.fill();
}
}
private void fill()
{
int pag=convert.toint32(this.label1.text);//设置当前页
sqlconnection con=new sqlconnection("server=.;database=northwind;uid=sa;pwd=980123;");//实例化连接
sqldataadapter sda=new sqldataadapter();//建立一个数据适配器对象
sda.selectcommand=new sqlcommand("select * from employees",con);//实例化selectcommand,并用他从数据库读出全部数据
dataset ds=new dataset();//定义一个数据集填充
sda.fill(ds,"name");//使用适配器填充数据集到本地表“name”
pageddatasource ps=new pageddatasource();//实例化一个pageddatasource,这个本来是封装是datagrid里面的
ps.datasource=ds.tables["name"].defaultview;//设置他的数据源为ds.tables["name"].defaultview数据视图
ps.allowpaging=true;//允许分页
ps.pagesize=3;//每页显示数量
ps.currentpageindex=pag-1;//当前页码,因为页是从0开始的,所以要减1
this.button1.enabled=true;//按钮当前状态
this.button2.enabled=true;
this.label5.text=ps.pagecount.tostring();
if(pag==1)
{
this.button1.enabled=false;//如果当前页是 1 ,上一页按钮不可用
}
if(pag==ps.pagecount)
{
this.button2.enabled=false;//如果当前页是最后一页 ,下一页按钮不可用
}
this.repeater1.datasource=ps;
this.repeater1.databind();
}
窗体代码
private void button2_click(object sender, system.eventargs e)
{
this.label1.text=((convert.toint32(this.label1.text))+1).tostring();
this.fill();
}
private void button1_click(object sender, system.eventargs e)
{
this.label1.text=((convert.toint32(this.label1.text))-1).tostring();
this.fill();
}
新闻热点
疑难解答