在IF语句和Repeater中使用Eval

时间:2009-07-03 21:51:03

标签: asp.net

我试图在IF语句和转发器中使用Eval。

我想做这样的事情:

 <asp:Repeater runat="server" ID="rpRepeater">
      <ItemTemplate>
           <% if ((bool)Eval("A_Boolean"))
              { %>
                blah...
           <% } %>
      </ItemTemplate>
 </asp:Repeater>

此代码给出了以下错误:

数据绑定方法(如Eval(),XPath()和Bind())只能在数据绑定控件的上下文中使用。

2 个答案:

答案 0 :(得分:1)

Eval只能在“绑定”标签内使用。

<%# Eval("A_Boolean") %>

http://support.microsoft.com/kb/307860#1a

答案 1 :(得分:1)

可以像这样模拟if语句(代码在ItemTemplate内)。

<asp:Panel runat="server" Visible='<%# Eval("A_Boolean") %>'>
    blah...
</asp:Panel>