在asp.net页面中使用c#代码获取RepeaterItem <% ..%祝辞

本文关键字:获取 代码 RepeaterItem 祝辞 net asp | 更新日期: 2023-09-27 17:53:05

简单的问题,没有答案…怎么了?

ASP。净的例子:

<asp:Repeater ID="myRepeater" runat="server">
    <ItemTemplate>
        <% if(!string.IsNullOrWhiteSpace(((Message)((RepeaterItem)Eval("Container")).DataItem).text)) <%-- <- Exception --%>
           { %>
        <div class="msg">
            <%# ((Message)Container.DataItem).text %> <%-- <- This works fine! --%>
        </div>
        <% } %>
    </ItemTemplate>
</asp:Repeater>

第3行异常:数据绑定方法,如Eval()、XPath()和Bind()只能在数据绑定控件的上下文中使用。

我不明白为什么不工作>.<</p>

提前感谢您的建议或信息

在asp.net页面中使用c#代码获取RepeaterItem <% ..%祝辞

可以使用以下代码

<asp:Repeater ID="myRepeater" runat="server">
    <ItemTemplate>
        <div runat="server" visible='<%# !string.IsNullOrWhiteSpace(((Message)((RepeaterItem)Eval("Container")).DataItem).text)%>'
            <div class="msg">
                <%# ((Message)Container.DataItem).text %>
            </div>
        </div>
</ItemTemplate>