gpt4 book ai didi

c# - WPF 监视属性更改

转载 作者:行者123 更新时间:2023-11-30 21:29:32 25 4
gpt4 key购买 nike

我经常有以下任务:

我有一组对象(例如客户),想为用户提供这些对象的编辑器。通常我在编辑器的左侧有一些列表控件,在右侧有一个表单。表单在左侧显示当前选中的对象的属性。

关于任何更改的确认,至少有两种策略:

  • 使编辑器成为模态对话框窗口并为其提供确定/取消按钮。确定保存所有对象的所有更改
  • 在右侧表单上方或下方为编辑器提供一个“保存”按钮,以允许用户确认对当前所选对象的更改。

我的问题是关于第二个策略,它作为一个带有 WPF 的 MVVM 应用程序实现:

我想向我的用户反馈有未保存的更改。文本编辑器等应用程序通常通过在发生任何更改时启用“保存”按钮并在用户按下它以确认她/他的更改后再次禁用它来解决此问题。

如果我理解正确,我将不得不监视对我的表单中任何绑定(bind)属性的更改(由模型类支持)。通常我的模型类使用自动属性(没有显式的 getter 和 setter)。我是否必须为我的所有属性编写显式 getter 以在发生任何更改时启用“保存”按钮,或者是否有更智能的方法来实现这一点?

最佳答案

遵循 MVVM 模式,您的 ViewModel 应该实现 INotifyPropertyChanged接口(interface),比您可以轻松订阅 PropertyChanged 事件并监视属性更改

关于c# - WPF 监视属性更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55280215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com