使用一个具有复选框的列绑定gridview

时间:2016-06-15 17:39:37

标签: c# asp.net gridview checkbox

我有一个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;构造”

2 个答案:

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