【问题标题】:Detect changes to user input controls in Silverlight?检测 Silverlight 中用户输入控件的更改?
【发布时间】:2011-02-19 07:14:32
【问题描述】:

我有一个包含许多文本框、组合框和日期选择器的子窗口。我想知道用户是否更改了这些中的任何值(知道我是否需要保存到 db)

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

还有其他选择吗?

(注意项目没有设置成MVVM)

【问题讨论】:

    标签: silverlight validation controls


    【解决方案1】:

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

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

    那你根本不用绑定:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-05
      • 1970-01-01
      • 2018-02-07
      • 2010-12-29
      • 2016-07-30
      • 2019-11-23
      • 2012-04-04
      相关资源
      最近更新 更多