已解决:请参阅下面的解决方案!
使用带有 C# 代码的 aspx。
我在gridview的项目模板中的按钮中有以下代码:
Enabled='<%# IIF(Eval("wrqst_need_ind") == "Y","TRUE","FALSE") %>'
我收到以下错误:
The name 'IIF' does not exist in the current context
我究竟做错了什么?如果我使用“IF”而不是“IIF”,我会得到同样的错误
完整的item模板代码如下:
<ItemTemplate>
<asp:Button ID="wrqst_need_ind_btn" runat="server" Text = "Create WR"
onClientClick="javascript:popUp('popup_createWR.aspx')"
Enabled='<%# IIF(Eval("wrqst_need_ind") == "Y","TRUE","FALSE") %>'
CommandArgument='<%# Eval("dvc_nm") + "|" + Eval("data_orgtn_yr") %>'/>
</ItemTemplate>
如果我把线拿出来,它工作正常。
在我看来,这应该工作......
编辑:我现在正在使用这个:
Enabled='<%#Eval("wrqst_need_ind") == "Y" ? "TRUE" : "FALSE" %>'
并得到这个错误:
服务器标签的格式不正确。
非常感谢你的帮助!
更新:
我试过这个:
Enabled='<%# Eval("wrqst_need_ind") == "Y" ? Convert.ToBoolean(1) : Convert.ToBoolean(0) %>' and it ran!
但是,每个按钮都被禁用。所以我尝试了:
Enabled='<%# Eval("wrqst_need_ind") == "Y" ? Convert.ToBoolean(1) : Convert.ToBoolean(1) %>'
然后每个按钮都被禁用。似乎每次它都返回错误......为什么?
已解决:请参阅下面的解决方案!