【发布时间】:2015-02-13 14:16:08
【问题描述】:
使用 .Net,我需要仅根据表单上已更改状态的复选框生成响应。那么我如何知道复选框在提交之前是否已经改变了之前的值。我不能使用 onchange 事件,因为用户在提交之前可能会选中多个框。
【问题讨论】:
-
WinForms、WebForms、MVC 还是 WPF?
使用 .Net,我需要仅根据表单上已更改状态的复选框生成响应。那么我如何知道复选框在提交之前是否已经改变了之前的值。我不能使用 onchange 事件,因为用户在提交之前可能会选中多个框。
【问题讨论】:
使用 CheckedChanged 事件
check.CheckedChanged += new EventHandler(check_CheckedChanged);
protected void check_CheckedChanged(object sender, EventArgs e)
{
//do stuff
}
【讨论】:
如果您将之前的值与当前值进行比较并且它们不一样,那么它们已经改变了。
所以将之前的状态保存到一个对象中,然后将该对象与当前状态进行比较。 (记录所做的更改变得更加复杂,就好像您更改了两次您不会将其作为更改提交)
【讨论】:
使用 CheckStateChanged(或其他)事件来标记更改(例如,您可以将名称存储在 List 中),然后使用提交按钮中的事件来保存更改。
【讨论】: