我試圖在我的中繼器裏找到<span id="source">
listControl將返回null。如何在asp中繼器內找到嵌套控件
<asp:Repeater id="rptRssFeed" runat="server" OnItemDataBound="RssFeedItemDataBound">
<HeaderTemplate><ul></HeaderTemplate>
<FooterTemplate></ul></FooterTemplate>
<ItemTemplate>
<li id="socialListItem" runat="server">
<a href="<%# GetNavigationLink(Container.DataItem) %>" target="_blank" id="title" runat="server"><%# GetTitle(Container.DataItem) %></a>
<span class="source" id="source" runat="server"><%# GetSource(Container.DataItem) %></span>
<p><%# GetTeaser(Container.DataItem) %></p>
</li>
</ItemTemplate>
<AlternatingItemTemplate>
<li class="alt" id="socialListItem" runat="server">
<a href="<%# GetNavigationLink(Container.DataItem) %>" target="_blank" id="title" runat="server"><%# GetTitle(Container.DataItem) %></a>
<span class="source" id="source" runat="server"><%# GetSource(Container.DataItem) %></span>
<p><%# GetTeaser(Container.DataItem) %></p>
</li>
</AlternatingItemTemplate>
</asp:Repeater>
public void RssFeedItemDataBound(object sender, RepeaterItemEventArgs e)
{
HtmlGenericControl listControl = (HtmlGenericControl)e.Item.FindControl("socialListItem");
if (!ShowSource)
{
HtmlGenericControl spanControl = (HtmlGenericControl)listControl.FindControl("source");
spanControl.Visible = false;
}
listControl.Attributes["class"] += ((XmlFeedItem)e.Item.DataItem).XmlFeedType;
}
「不工作」是什麼意思?錯誤?例外?還有別的嗎? – Oded 2012-01-18 14:30:57
什麼是ShowSource? – Brissles 2012-01-18 14:36:23
@Brissles - 看起來像一個布爾屬性,用於確定「span」是否可見。 – Oded 2012-01-18 14:37:12