在 WPF 应用程序中使用 MVVMLight 工具包。
我有一个封装应用程序设置的 ViewModel 类,以及一个允许用户更改它们的相应 View 。设置存储在注册表中。
我在主视图中添加了一些状态指示器,以反射(reflect)某些设置是打开还是关闭。将它们的可见性绑定(bind)到 MainViewModel 中的属性是有意义的。
是否可以将 MainViewModel 中的属性绑定(bind)到 SettingsViewModel 中的属性,或者我应该使用消息告诉 MainViewModel SettingsViewModel 中的某些内容已更改?
感谢您的任何建议...
最佳答案
一种简单的方法是将 SettingsViewModel 作为 MainViewModel 的属性公开,如下所示:
Public SettingsViewModel Settings
{
get
{
return settingsViewModel;
}
}
然后在您的 MainView.xaml 中,您的绑定(bind)可以执行此操作:
"{Binding Path=Settings.ASettingOnTheSettingsVM}"
关于wpf - MVVM : Bind property in ViewModel to property in a different VM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19496520/