4
|
Amsakanna · 技术社区 · 14 年前 |
1
2
我认为主视图模型是定义文件系统监视程序的正确位置。对于线程问题,这是一种简单的方法:
每个“要处理的代码”都将在UI线程中执行,以便它可以更新
如果您喜欢使用单独的事件处理程序方法,您可以从上面的代码调用它们,或者使用这个方便的快捷方式:
在哪里?
就我个人而言,我更喜欢第一种方法,因为我不喜欢创建四个额外的单线方法。 请注意,您的视图模型需要知道要重新调用哪个调度器。最简单的方法是从DispatcherObject派生视图模型,如上所述。另一种方法是视图模型的构造函数或注册FileSystemWatcher事件的方法,将Dispatcher.current的副本存储在本地字段或本地变量中,然后将其用于.BeginInvoke调用。 另外请注意,如果您愿意,可以在视图代码隐藏中使用完全相同的代码,而不是在视图模型中使用。 |
2
2
|
3
1
我使用了RayB的方法,但必须稍微修改一下,我想我会在这里发布一个更新,以节省其他人一些时间。 我的vs2010/.NET 4.0 wpf项目正在引发错误:
经过一些调整,我想出了以下的办法。注意为处理重命名事件而定义的附加变量:
|
user1702369 · 模型中的IEnumerable可观察 7 年前 |
pyriame · 沙马林。表单:输入一个字符后取消焦点输入 7 年前 |
Losec · 使用命令过滤ObservableCollection 7 年前 |
Riyas · 如何更新可观察集合组 7 年前 |