2015-10-26 63 views
0

我有以下代碼:ASP.NET內嵌代碼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> 

所以我想,如果容器項目是空的「pnlAdd」是可見的。

,但我得到了以下錯誤:

pnlAdd is not member of mySite.aspx

+0

檢查你的文件名,你重命名或移動呢?在這裏檢查/發佈.aspx的第一行,在這裏的代碼中檢查/發佈你的類名? –

+0

您是否嘗試在面板下方移動「IIf」? –

回答

0

SOLUTION:

我用這個代碼:

  <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> 
3

好像上下文是不正確的,不知道你是否可以從一個數據綁定表達式中做這類事情。嘗試將其直接嵌入到標記中進行設置,例如

<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>