检测Silverlight中用户输入控件的更改?

时间:2010-05-13 21:28:31

标签: silverlight validation controls

我有一个包含许多Textbox,Comboboxes和DatePickers的子窗口。我想知道用户是否更改了这些中的任何值(以了解我是否需要保存到db)

我能想到的一种方法是在'on chg'事件处理程序中设置bool。但是,如果用户更改了值,例如组合框,则更改回原始值,这仍然会被视为更改。

还有其他选择吗?

(注意项目未设置为MVVM)

1 个答案:

答案 0 :(得分:0)

如果你不使用mvvm但仍然绑定到一个对象,那么:

  • 在显示窗口之前创建对象的副本,保存并将其绑定到DataContext
  • 无论何时您需要知道用户是否进行了任何更改,您都可以将保存的对象与DataContext进行比较(属性为属性)

我根本不使用绑定:

  • 在显示窗口之前保存所有可以修改为字典的字段
  • 无论何时您需要知道用户是否进行了任何更改,您都可以将字典值与字段值进行比较