Repeater的嵌套
最近由于做项目中用到了Repeater的嵌套,于是调查了一下,发现其实很简单,要做的操作也就是在前台给子repeater设定datasource,然后在后台<%# Ctype(Container.DataItem,DataRowView).CreateChildView("myrelation") %>把取出的数据在dataset中作个Relation,然后绑定父层Repeater即可部分代码如下:
前台代码:
前台代码:
1
<asp:Repeater id="parentRepeater" runat="server">
2
<itemtemplate>
3
<b>
4
<%# DataBinder.Eval(Container.DataItem, "Enquiry_No") %>
5
</b>
6
<br>
7
<asp:repeater id="childRepeater"
8
DataSource = <%# Ctype(Container.DataItem,DataRowView).CreateChildView("myrelation") %> runat="server">
9
<itemtemplate>
10
<%# DataBinder.Eval(Container.DataItem, "QuestionName")%>
11
<br>
12
</itemtemplate>
13
</asp:repeater>
14
</itemtemplate>
15
</asp:Repeater>
后台代码:
<asp:Repeater id="parentRepeater" runat="server">2
<itemtemplate>3
<b>4
<%# DataBinder.Eval(Container.DataItem, "Enquiry_No") %>5
</b>6
<br>7
<asp:repeater id="childRepeater" 8
DataSource = <%# Ctype(Container.DataItem,DataRowView).CreateChildView("myrelation") %> runat="server">9
<itemtemplate>10
<%# DataBinder.Eval(Container.DataItem, "QuestionName")%>11
<br>12
</itemtemplate>13
</asp:repeater>14
</itemtemplate>15
</asp:Repeater> 1
Dim ds As New DataSet("dsEnqueiry")
2
Dim dsTemp As New DataSet
3
Dim objEnquiry As New Enquiry_Business
4
5
dsTemp = objEnquiry.GetAllEnquiry()
6
dsTemp.Tables(0).TableName = "Enquiry"
7
ds.Tables.Add(dsTemp.Tables("Enquiry").Copy)
8
9
dsTemp = objEnquiry.GetAllQuestion()
10
dsTemp.Tables(0).TableName = "Question"
11
ds.Tables.Add(dsTemp.Tables("Question").Copy)
12
13
ds.Relations.Add("myrelation", ds.Tables("Enquiry").Columns("Enquiry_No"), _
14
ds.Tables("Question").Columns("EnquiryNo"))
15
16
Me.parentRepeater.DataSource = ds.Tables("Enquiry").DefaultView
17
Me.parentRepeater.DataBind()
Dim ds As New DataSet("dsEnqueiry")2
Dim dsTemp As New DataSet3
Dim objEnquiry As New Enquiry_Business4

5
dsTemp = objEnquiry.GetAllEnquiry()6
dsTemp.Tables(0).TableName = "Enquiry"7
ds.Tables.Add(dsTemp.Tables("Enquiry").Copy)8

9
dsTemp = objEnquiry.GetAllQuestion()10
dsTemp.Tables(0).TableName = "Question"11
ds.Tables.Add(dsTemp.Tables("Question").Copy)12

13
ds.Relations.Add("myrelation", ds.Tables("Enquiry").Columns("Enquiry_No"), _14
ds.Tables("Question").Columns("EnquiryNo"))15

16
Me.parentRepeater.DataSource = ds.Tables("Enquiry").DefaultView17
Me.parentRepeater.DataBind()posted on 2006-06-13 09:56 一切为了DotNet 阅读(433) 评论(0) 收藏 举报
浙公网安备 33010602011771号