文档详情

Datalist控件分析和总结.docx

发布:2024-03-11约4.47万字共50页下载文档
文本预览下载声明

Datalist嵌套

DataList中获取子控件的代码

stringgetvalue=null;

stringgetvalue=null;

for(inti=0;ithis.DataList1_TMB_TestQuestion.Items.Count;i++)

{

getvalue=((RadioButtonList)this.DataList1_TMB_TestQuestion.Items[i].Fin

dControl(RadioButtonList1)).SelectedValue.ToString(); //重要

的是这句话

if(getvalue==null||getvalue.Equals())

{

Response.Write(scriptalert(第+(i+1)+题未填!)/script);

break;

}

DataList嵌套绑定数据

最近要做一个图书分类列表显示

最近要做一个图书分类列表显示,要用到这个,想了好久,又在网上搜了一下,才搞定

关键的就是在外层

关键的就是在外层DataList的ItemDataBound的事件中使用e.Item.FindControl()来

找到自己所需要的

找到自己所需要的(在外层)数据

我郁闷的就是自己开始是在

我郁闷的就是自己开始是在DataBinding事件中处理,试了很多遍都没有搞定.

自己先拖一个

自己先拖一个 DataList1,编辑模板里面放一个 Lable1,在DataList1里面再放一个

DataList2,

DataList2,同样在DataList2编辑模板放一个Lable2.当然,两个Lable的数据绑定字段是

要自己写一下的

要自己写一下的.

看一下代码吧

看一下代码吧,这个很简单

1 protectedvoidPage_Load(objectsender,EventArgse)2 {

strings=SELECTBookClass.*FROMBookClassWHERE(BookClassLevel=0);

Book.DAL.DBAccessdb=newBook.DAL.DBAccess();

DataSetdr1=db.ExecuteDataSet(s);

DataList1.DataSource=dr1;

DataList1.DataBind();8

9 }

10 protectedvoidDataList1_ItemDataBound(objectsender,DataListItemEventArgse)

11 {

stringf=((Label)e.Item.FindControl(Label1)).Text;

strings=SELECTBookClass.*FROMBookClassWHERE(BookClassFather =@f);

14

Book.DAL.DBAccessdb=newBook.DAL.DBAccess();

db.AddParameter(@f,f);

DataSetds=db.ExecuteDataSet(s);

DataListdl2=(DataList)e.Item.FindControl(DataLis2);

19

19

20

21

dl2.DataSource=ds;

dl2.DataBind();

}

那个Book.DAL.DBAccess是我自己写的一个用来数据库访问并执行语句的类,不用管它,可以用我们一般最简答的数据库访问的过程替代.重要的看一下这句,这个是获得外层的值,

在这里就是图书分类的1级分类

stringf=((Label)e.Item.FindControl(Label1)).Text;

还有这句,这个是找到内层的DataList,找到它后给它的数据源赋值就OK了

DataListdl2=(DataList)e.Item.FindControl(DataLis2);

当然,我们也可以利用这个思想嵌套使用其他的数据控件

两层DataList的嵌套

2008年07月03日 09:36 IT168.com

【IT168技术文档】

内层控件数据绑定与事件声明在外层的ItemDataBind中实现;例子中外层DataList的Id为dlQuestion,内层为dlItem;代码如下

privatevoiddlQuestion_ItemDataBound(objectsender,System.Web.UI.WebControls.Da

显示全部
相似文档