繁体   English   中英

MVVM绑定与公开属性

[英]MVVM Binding with exposed property

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

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

  1. 在viewmodel中定义一个属性,并将该viewmodel传递给您的单例。 Singleton应该改变相关的属性和它自己的属性。
  2. 将属性从singleton移动到viewmodel或在viewmodel本身中包含singleton
  3. 创建一个事件来更改单例上的属性
  4. 从INotifyPropertyChanged继承单例,并在VM中附加到singleton的PropertyChanged事件。 并监控您的财产名称。
  5. ...

尽管您的应用中可能存在一些应该被处理的架构不一致,但最简单的方法是第一个选项。

如果我理解你,我会使用Observer模式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM