我有一个gridview,其中一列有一个复选框。我想将gridview绑定到数据源,并根据预定义的状态值相应地选中/取消选中复选框; (1表示真,0表示假)。
这是我的尝试:
<asp:TemplateField HeaderText="Cerrada">
<ItemTemplate>
<asp:CheckBox ID="CBCerrada" runat="server" Checked="<% if (Eval("cerrada").ToString() == "1") { %>true<% } else if (Eval("cerrada").ToString() == "0") { %>false<% } %>" />
</ItemTemplate>
</asp:TemplateField>
但是我收到以下错误:“服务器标签不能包含&lt;%...%&gt;构造”
答案 0 :(得分:2)
您的语法不正确。请参阅以下有关如何映射值的示例
<asp:CheckBox ID="CBCerrada"
runat="server"
Checked='<%# (Eval("cerrada").ToString().Equals("1") ? true : false) %>' />
答案 1 :(得分:1)
对于checked属性使用单引号,并且在%
之后缺少# <asp:TemplateField HeaderText="Cerrada">
<ItemTemplate>
<asp:CheckBox ID="CBCerrada" runat="server" Checked='<%# Eval("cerrada") %>' />
</ItemTemplate>
</asp:TemplateField>