ASP.NET 内联代码 iif
ASP.NET inline code iif
我有以下代码:
<%# IIf(IsDBNull(Container.DataItem("idQuestionaire")), Me.pnlAdd.Visible = True, Me.pnlRemove.Visible = True)%>
<asp:Panel ID="pnlAdd" runat="server" Visible="false">
add
</asp:Panel>
<asp:Panel ID="pnlRemove" runat="server" Visible="false">
remove
</asp:Panel>
所以我希望如果 Container 项为 NULL,则 "pnlAdd" 是可见的。
但是我收到以下错误:
pnlAdd is not member of mySite.aspx
似乎上下文不正确,不确定您是否可以在数据绑定表达式中执行此类操作。尝试通过直接将其嵌入标记中来设置它,例如
<asp:Panel ID="pnlAdd" runat="server" Visible="<%# IsDBNull(Container.DataItem("idQuestionairre")) %>">
add
</asp:Panel>
<asp:Panel ID="pnlAdd" runat="server" Visible="<%# !IsDBNull(Container.DataItem("idQuestionairre")) %>">
remove
</asp:Panel>
解决方案:
我使用了这个代码:
<asp:LinkButton ID="lbtnAdd" runat="server" Text="::Add" Visible='<%# IIf(IsDBNull(Container.DataItem("idQuestionaire")), "true", "false")%>'></asp:LinkButton>
<asp:LinkButton ID="lbtnRemove" runat="server" Text="::Remove" Visible='<%# IIf(IsDBNull(Container.DataItem("idQuestionaire")), "false", "true")%>'></asp:LinkButton>
我有以下代码:
<%# IIf(IsDBNull(Container.DataItem("idQuestionaire")), Me.pnlAdd.Visible = True, Me.pnlRemove.Visible = True)%>
<asp:Panel ID="pnlAdd" runat="server" Visible="false">
add
</asp:Panel>
<asp:Panel ID="pnlRemove" runat="server" Visible="false">
remove
</asp:Panel>
所以我希望如果 Container 项为 NULL,则 "pnlAdd" 是可见的。
但是我收到以下错误:
pnlAdd is not member of mySite.aspx
似乎上下文不正确,不确定您是否可以在数据绑定表达式中执行此类操作。尝试通过直接将其嵌入标记中来设置它,例如
<asp:Panel ID="pnlAdd" runat="server" Visible="<%# IsDBNull(Container.DataItem("idQuestionairre")) %>">
add
</asp:Panel>
<asp:Panel ID="pnlAdd" runat="server" Visible="<%# !IsDBNull(Container.DataItem("idQuestionairre")) %>">
remove
</asp:Panel>
解决方案:
我使用了这个代码:
<asp:LinkButton ID="lbtnAdd" runat="server" Text="::Add" Visible='<%# IIf(IsDBNull(Container.DataItem("idQuestionaire")), "true", "false")%>'></asp:LinkButton>
<asp:LinkButton ID="lbtnRemove" runat="server" Text="::Remove" Visible='<%# IIf(IsDBNull(Container.DataItem("idQuestionaire")), "false", "true")%>'></asp:LinkButton>