MVVM绑定与公开属性

时间:2012-04-03 05:44:44

标签: c# wpf mvvm

我有一个挂钩到ViewModel的View。我有一个由foo.Current公开的单例类。我在该类上有一个属性,它将通过调用foo.Current函数的按钮单击命令进行更改。我希望能够将文本框的文本绑定到该值,当该值更新时,文本框将更新。我的ViewModel确实实现了INotifyPropertyChanged,我在视图模型上有其他属性可以更新控件。我可以使用单值类用新值更新ViewModel的最佳方法是什么? 我想我需要想办法让Singleton类更新ViewModel。

2 个答案:

答案 0 :(得分:2)

目前的情况没有“最佳”方式,选项如下:

  1. 在viewmodel中定义属性,并将该viewmodel传递给您的单例。 Singleton应该改变相关的属性和它自己的属性。
  2. 将属性从singleton移动到viewmodel或在viewmodel本身中包含singleton
  3. 创建一个事件以更改单身人士的属性
  4. 从INotifyPropertyChanged继承单例,并在VM中附加到singleton的PropertyChanged事件。并监控您的财产名称。
  5. ...
  6. 尽管您的应用中可能存在一些应该被处理的架构不一致,但最简单的选择是第一种选择。

答案 1 :(得分:0)

如果我理解你,我会使用观察者模式。