我有一個嵌套的repeater控件,顯示數據列表,在我的情況下,它是一個FAQ列表。這裏是設計部分:更改C#中Repeaters中數據綁定控件的值
<asp:Repeater ID="lists" runat="server">
<ItemTemplate>
<h2 class="sf_listTitle"><asp:Literal ID="listTitle" runat="server"></asp:Literal></h2>
<p class="sf_controlListItems">
<a id="expandAll" runat="server">
<asp:Literal ID="Literal1" runat="server" Text="<%$Resources:ExpandAll %>"></asp:Literal>
</a>
<a id="collapseAll" runat="server" style="display:none;">
<asp:Literal ID="Literal2" runat="server" Text="<%$Resources:CollapseAll %>"></asp:Literal>
</a>
</p>
<ul class="sf_expandableList" id="expandableList" runat="server">
<asp:Repeater ID="listItems" runat="server">
<HeaderTemplate>
</HeaderTemplate>
<ItemTemplate>
<li>
<h1 id="headlineContainer" runat="server" class="sf_listItemTitle">
<a id="headline" runat="server" title="<%$Resources:ClickToExpand %>"></a>
</h1>
<div id="contentContainer" runat="server" class="sf_listItemBody" style="display:none;">
<asp:Literal ID="content" runat="server"></asp:Literal>
</div>
</li>
</ItemTemplate>
<FooterTemplate>
</FooterTemplate>
</asp:Repeater>
</ul>
</ItemTemplate>
</asp:Repeater>
,我感興趣的中繼器是第二個轉發器,listItems
。在我的代碼隱藏中,我不能直接調用listItems
並查看其中的控件。我想抓的list.DataBinding
內部控制(也許我需要使用不同的事件?)方法:
void lists_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
var oRepeater = (Repeater) lists.FindControl("listItems");
}
但這出來作爲null
。任何人都可以給我一些指示/提示我需要做什麼才能獲得訪問listItems
轉發器,它是兒童控制?
謝謝!
謝謝你,我完全忘了哈哈。所以一旦我得到這個oRepeater,我如何獲得控制文字? – Anders 2009-07-29 16:38:53
想想我已經在你的回覆中報道過你了,先生:) – 2009-07-29 16:48:43