C# 为什么复选框不维护它';s值多少?
我遇到了一个有趣的问题 我在gridview中有一个复选框(在模态中)。在CLosingModal事件中,我正在提取复选框,但它显示FALSE,即使我选中True 为什么?C# 为什么复选框不维护它';s值多少?,c#,asp.net,c#-4.0,gridview,webforms,C#,Asp.net,C# 4.0,Gridview,Webforms,我遇到了一个有趣的问题 我在gridview中有一个复选框(在模态中)。在CLosingModal事件中,我正在提取复选框,但它显示FALSE,即使我选中True 为什么? <asp:TemplateField HeaderText="Conveyed ?"> <ItemTemplate> <asp:CheckBox ID="chkBoxIsConveyed" runat="server" Checked='<%# Convert.ToBool
<asp:TemplateField HeaderText="Conveyed ?">
<ItemTemplate>
<asp:CheckBox ID="chkBoxIsConveyed" runat="server" Checked='<%# Convert.ToBoolean(Eval("IsConveyed")) %>' />
</ItemTemplate>
</asp:TemplateField>
我进行了调试,它调用了函数。尝试将AutoPostBack值设置为true,我相信当您选中复选框时,它不会触发事件来更新模型。有关更多信息,请参阅尝试与所做操作相反的操作。首先更新数据,然后隐藏模式。好的,等等,先生,我正在尝试抱歉,先生,但是没有运气:/t尝试绑定而不是评估。对于双向数据绑定,您需要使用绑定。@NitinAlapati不工作否;it’这不是真的,它确实触发了事件并仔细阅读了我的问题I’我想你指的事件是UpdatesMidered()?但这不是我想说的,我的意思是复选框事件。好的,让我进一步解释。您将该值绑定到UI(客户端脚本),并且希望从代码隐藏(服务器端脚本)获取更新后的值,然后需要在执行选中复选框操作时将该值发回服务器,因此,您需要将AutoPostBack属性添加到复选框并将其设置为true。
protected void btnCloseModal_Click(object sender, EventArgs e)
{
mdlLastHearingDates.Hide();
UpdateIsConveyed();
}
public void UpdateIsConveyed()
{
foreach (GridViewRow r in grdViewLastHearingDates.Rows)
{
int CaseHearingID = Convert.ToInt32(r.Cells[0].Text);
CheckBox chkBox = r.FindControl("chkBoxIsConveyed") as CheckBox;
MngCaseHearings.UpdateCasesIsConveyed(CaseHearingID, chkBox.Checked);
}
}