Jus*_*tin 5 wpf settings mvvm mvvm-light
我正在为我的应用程序构建一个设置对话框,现在所有设置都与主视图模型上的设置相对应,但是当我添加更多视图和视图模型时,有些可能没有.
我需要知道将当前设置加载到设置对话框中的最佳做法是什么,然后如果用户单击"确定",则将设置保存到相应的视图模型.
我不会使用Properties.Settings.Default系统来存储设置,因为我希望我的应用程序尽可能便携,这会将用户范围设置存储在目录中:
C:\Users\ username \Local Settings\Application Data\ ApplicationName
而不是在我的应用程序目录中.
如果它有任何区别我使用Laurent Bugnion的MVVM Light Toolkit.
使用工具包的 Messenger 来实现怎么样?
当在设置 ViewModel 中进行更改时,您只需通知任何感兴趣的人:
Messenger.Send<Settings>(changedSettings);
Run Code Online (Sandbox Code Playgroud)
所有需要知道设置是否已更改的 Viewmodel 都会注册到该消息:
Messenger.Register<Settings>(this, delegate(Settings changedSettings){loadSettings(changedSettings);});
Run Code Online (Sandbox Code Playgroud)
请阅读此处:Mvvm light Messenger或查看类似的帖子mvvm-light-how-to-access-property-in-other-view-model
| 归档时间: |
|
| 查看次数: |
2207 次 |
| 最近记录: |