为什么我的复选框没有工作?

时间:2015-12-08 16:46:31

标签: c# asp.net gridview

我在gridview中有一个复选框。我想使用选中/取消选中复选框更新数据库表(BIT)中的true/false字段,但它不起作用。

我正在用这个

填写gridview
Select  CaseHearings.pk_CaseHearings_ID, IsConveyed                  
        From CaseHearings

和这个

<asp:TemplateField HeaderText="Conveyed ?">
        <ItemTemplate>
              <asp:CheckBox ID="chkBoxIsConveyed" runat="server" CssClass="form-control"
              Checked='<%# Eval("IsConveyed") == DBNull.Value? false: Convert.ToBoolean(Eval("IsConveyed")) %>' />
         </ItemTemplate>
</asp:TemplateField>

2 个答案:

答案 0 :(得分:0)

当gridview处于编辑模式时,您需要模板:

<asp:TemplateField HeaderText="MyBool" SortExpression="MyBool">
    <EditItemTemplate>
        <asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("MyBool") %>' />
    </EditItemTemplate>
    <ItemTemplate>
        <asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Bind("MyBool") %>' Enabled="false" />
    </ItemTemplate>
</asp:TemplateField>

答案 1 :(得分:0)

您可以使用:

__

然后实现事件<Columns> <asp:CommandField ShowEditButton="true"/> <asp:CheckBoxField DataField="IsConveyed" HeaderText="Conveyed ?" /> . . </Columns> OnRowEditing等,以处理已编辑的数据。或者使用OnRowUpdating或类似内容,具体取决于您收集和绑定数据的方式。