求DataList嵌套例子代码

该页面有两个小模块:块1:其他信息服务(DataList1显示)(大标题)1.水电费2.蔬菜价格信息3.商场信息(1-3为内嵌DataList2显示的内容)模块2:新闻中... 该页面有两个小模块:
块1:
其他信息服务(DataList1显示)(大标题)
1.水电费
2.蔬菜价格信息
3.商场信息
(1-3为内嵌DataList2显示的内容)

模块2:
新闻中心(DataList1显示)
1.公司新闻
2.其他媒体新闻
(1-2为内嵌DataList2显示的内容)

求这个例子的代码!
菜鸟求助,请您耐心帮助!谢谢!
如果再能告诉我怎么设计数据表 更好!
展开
 我来答
QQ2k5
2009-11-03 · TA获得超过438个赞
知道小有建树答主
回答量:911
采纳率:25%
帮助的人:256万
展开全部
下面是我空间的一篇文章,你看下,或许对你有所帮助
最近老是有人问这个问题,其实这个问题细细想来其实就是把一个DataList(childTabaList)写在一个dataList(parentDataList)的<ItemTemplate></ItemTemplate>中,然后再对datalist进行绑定,下面就是如何实现的代码:前台:<asp:DataList runat="server" Id="ParentDataList" GridLines="Both" cellpadding="3"
RepeatColumns="1" Width="407px">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<%# DataBinder.Eval(Container,"DataItem.OnDutyPeople") %>
<br>
<asp:DataList runat="server" Id="ChildDataList" GridLines="None" datasource='<%# DataBinder.Eval(Container, "DataItem.myrelation")%>'>
<HeaderTemplate>
<table width="100%">
<tr>
<td ><b>会议名称</b></td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr style ="height:25px;" >
<td ><asp:Label ID="lbName" Ruant="serve" Text=' <%# DataBinder.Eval (Container,"DataItem.MeetingName")%>'></asp:Label></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:DataList>
</ItemTemplate>
</asp:DataList>c# 代码:DataTable mytable = new DataTable("parentTable");mytable.Columns .Add(new DataColumn("OnDutyPeople"));这是用于绑定parentDataList的数据;DataTable childTable = new DataTable("childTable");
childTable.Columns.Add(new DataColumn("OnDutyPeople"));
childTable.Columns.Add(new DataColumn("MeetingName"));这是用于绑定childDataList的数据;(以上的datatable的数据载入,很简单我就不写了,)
下面就是如何把这两个datatable联系起来,这是关键;DataSet ds = new DataSet();
ds.Tables.Add(mytable);
ds.Tables.Add(childTable);
ds.Relations.Add("myrelation", ds.Tables["parentTable"].Columns["OnDutyPeople"], ds.Tables["childTable"].Columns["OnDutyPeople"]);这里利用DataSet的Relations的add方法,把两个table关联起来,第一个参数是这个关联的名称,第二个参数是外层datalist的与内层datalist相关联的主键,第三个参数是内层datalist与外层datalist相关联的外键。ParentDataList.DataSource = ds.Tables["parentTable"].DefaultView;
ParentDataList.DataBind();这样就把数据绑定上去了;下面就是如何获取DataList的数据了,相信对于经常操作DataList的大虾们,是小菜一碟,for(int i=0;i<parentDataList.Items.Count;i++){ DataList dt= (DataList)parentDataList.Item[i].FindControl("childDataList"); for(int j=0;j<dt.Item.Count;j++) { string str=((Label)dt.Item[j].FindControl("lbName")).Text;//这是childDataList的值; }}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式