【发布时间】:2015-04-01 18:34:55
【问题描述】:
我有一个gridview,里面有一个用于项目状态的复选框, 复选框有 checkchanged 事件,但是当我尝试选中或取消选中它时,checkchanged 没有触发。
这里是带有复选框的gridview的代码
<asp:GridView ID="dgvItems" runat="server" OnRowCreated="dgvItems_RowCreated" OnRowDataBound="dgvItems_RowDataBound" OnSelectedIndexChanged="dgvItems_SelectedIndexChanged" OnRowDeleting="dgvItems_RowDeleting">
<Columns>
<asp:TemplateField HeaderText ="Status">
<ItemTemplate>
<asp:CheckBox ID="chkStatus" runat="server" Checked = <%# (string)Eval("item_status") == "Active" ? true : false %> OnCheckedChanged="chkStatus_CheckedChanged" AutoPostBack="True" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
protected void chkStatus_CheckedChanged(object sender, EventArgs e)
{
GridViewRow row = dgvItems.SelectedRow;
string item_id = row.Cells[0].Text.ToString();
con.Open();
SqlCommand cmd = new SqlCommand("Update Items set item_status = 'Inactive' where item_id = @item_id ",con);
cmd.Parameters.AddWithValue("@item_id", cmd);
cmd.ExecuteNonQuery();
con.Close();
}
提前致谢!
【问题讨论】:
标签: c# asp.net gridview checkbox