我有一个 .NET 4.0 _C#4.0_应用程序。我正在使用 WPF 和 Model-View-ViewModel (MVVM)模式。 我有我的控件,一切都很好。该模式已正确应用,并且由于视图数据绑定而正常工作。
特别是在我看来,我有一个包含一些行的数据网格。当该窗口处于活动状态时,应用程序需要运行一个线程,并且该线程需要定期访问网格的行并使用从每一行收集的数据执行某些任务。
我的问题是:我应该在哪里创建线程的实例?在视图中?在ViewModel?在模型?
我有一种感觉(为了正确地进行数据绑定),应该在ViewModel的上下文中处理该线程。在这种情况下,最佳做法是什么?三江源。
答案 0 :(得分:6)
特别是在我看来,我有一个包含一些行的数据网格。该 应用程序需要在此窗口处于活动状态时运行一个线程 线程需要定期访问网格的行并执行一些操作 任务与从每一行收集的数据。
我认为您的应用程序不需要访问网格的行。相反,它需要访问绑定到网格行的数据。
然后,您应该在ViewModel中创建后台工作程序(或线程),因为线程不需要了解有关View的任何信息。