DataList的用法.docx
《DataList的用法.docx》由会员分享,可在线阅读,更多相关《DataList的用法.docx(16页珍藏版)》请在冰豆网上搜索。
DataList的用法
1数据绑定,绑定的方式为
<%#DataBinder.Eval(Container.DataItem,”name")%>
publicpartialclass_Default:
System.Web.UI.Page
{
SqlConnectionsqlcon;
stringstrCon="DataSource=(local);Database=db_04;Uid=sa;Pwd=why20080104019";
protectedvoidPage_Load(objectsender,EventArgse)
{
sqlcon=newSqlConnection(strCon);
stringsqlstr="selecttop1*fromtb_Member";
SqlDataAdaptermyda=newSqlDataAdapter(sqlstr,sqlcon);
DataSetmyds=newDataSet();
sqlcon.Open();
myda.Fill(myds,"tb_Member");
DataList1.DataSource=myds;
DataList1.DataBind();
DataRowViewmydrv=myds.Tables["tb_Member"].DefaultView[0];//ds中缓存的表格“tb_Member”
for(inti=0;i<=DataList1.Items.Count-1;i++)
{
Labellab=(Label)DataList1.Items[i].FindControl("Label1");
intmoney=Convert.ToInt32(mydrv["money"]);
lab.Text=money.ToString("¥#,###.00");
}
sqlcon.Close();
}
}
2.分页功能
intcurpage=Convert.ToInt32(this.Label2.Text.ToString().Trim());
PagedDataSourceps=newPagedDataSource();
sqlcon=newSqlConnection(strcon);
SqlDataAdaptersda=newSqlDataAdapter("select*fromtb_GoodsType",sqlcon);
DataSetds=newDataSet();
sda.Fill(ds,"tb_GoodsType");
ps.DataSource=ds.Tables["tb_GoodsType"].DefaultView;
ps.AllowPaging=true;
ps.PageSize=2;//实现分页
LinkButton1.Enabled=true;
LinkButton2.Enabled=true;
LinkButton3.Enabled=true;
LinkButton4.Enabled=true;
ps.CurrentPageIndex=curpage-1;
if(curpage==1)
{
this.LinkButton1.Enabled=false;
this.LinkButton2.Enabled=false;
}
if(curpage==ps.PageCount)
{
this.LinkButton3.Enabled=false;
this.LinkButton4.Enabled=false;
}
this.Label3.Text=Convert.ToString(ps.PageCount);
DataList1.DataSource=ps;
this.DataList1.DataKeyField="GoodsTypeID";
DataList1.DataBind();
}
2.查找Datalist中的控件
CheckBoxcb=(CheckBox)Datalist.Item[0].FindControl(“CheckBox1”)
Datalist的属性是:
DataListID="DataList1"runat="server"BorderColor="#FFFF99"
BorderWidth="2px"onitemdatabound="DataList1_ItemDataBound"Height="400px"
ondeletecommand="DataList1_DeleteCommand"Width="300px">
|
ID:
LabelID="Label1"runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"ID")%>'>
Label> |
|
姓名:
LabelID="Label2"runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"au_lname")%>'>
Label> |
|
性别:
DropDownListID="DropDownList1"runat="server"DataTextField="sex" DataValueField="sex"> ListItem>男
ListItem> ListItem>女
ListItem>
DropDownList> |
CheckBoxID="cb1"runat="server"Text="勾选此项"AutoPostBack="True"/>
学位:
LabelID="Label3"runat="server"
Text='<%#DataBinder.Eval(Container.DataItem,"state")%>'>
Label>
|
|
电话:
LabelID="Label4"runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"phone")%>'>
Label> |
|
地址:
LabelID="Label5"runat="server" Text='<%#DataBinder.Eval(Container.DataItem,"address")%>'>
Label> |
|
LinkButtonID="LinkButton1"runat="server"CommandName="delete">删除该项目
LinkButton>
|
DataList>
具体的代码是:
protectedvoidDataList1_DeleteCommand(objectsource,DataListCommandEventArgse)
{
SqlCon=newSqlConnection(strcon);
for(inti=0;i{
CheckBoxcb=(CheckBox)DataList1.Items[i].FindControl("cb1");
if(cb.Checked)
{
stringstrdel="deletefromtb_mrEmp05whereID='"+DataList1.DataKeys[i].ToString()+"'";
SqlCon.Open();
SqlCommandsqlcmd=newSqlCommand(strdel,SqlCon);
sqlcmd.ExecuteNonQuery();
SqlCon.Close();
}
else
{
Response.Write("请选择!
");
}
}
bind();
}
3.Datalist实现自动编号功能
protectedvoidDataList1_ItemDataBound(objectsender,DataListItemEventArgse)
{
intid=e.Item.ItemIndex+1;
((Label)e.Item.FindControl("Label3")).Text=id.ToString();
}
4.Datalist实现删除功能
在Datalist中的Button控件的Commandname必须设置为delete
protectedvoidDataList1_DeleteCommand(objectsource,DataListCommandEventArgse)
{
stringstrdel="deletefromtb_RevertwhereRevertID='"+DataList1.DataKeys[e.Item.ItemIndex].ToString()+"'";
sqlcon=newSqlConnection(strcon);
sqlcon.Open();
SqlCommandsqlcmd=newSql