WinForms数据绑定与视图模型 - 显示视图模型更改的速度很慢

时间:2011-08-21 21:09:54

标签: winforms data-binding mvvm viewmodel bindingsource

我有以下配置......

具有大约50-60个控件的单个表单(我知道很多)和单个视图模型,它负责存储表单的状态。视图模型属性通过BindingSource绑定到表单上的可编辑控件。

我的问题是这个......我希望能够用按钮清除表单。为了清除表格,我尝试了以下内容:

  • 将BindingSource的DataSource分配为null并重新分配新的视图模型。这最终会严重滞后。
  • 在视图模型中将所有属性设置为null / empty,然后触发OnPropertyChanged事件(我的视图模型基类正在实现INotifyPropertyChanged)。这太过分了,因为我正在清理60个字段,然后为每个字段触发一个OnPropertyChanged事件。

那么,有没有办法可以修改应用程序,以便能够清除视图模型并及时反映表单上的更改?我的表单要求所有50-60个控件都在同一个表单上,但控件可以分为四个逻辑组。将视图模型分解为可以独立处理逻辑组的四个演示者/视图模型对我有益吗?这会影响性能以及反映表单中变化所需的时间吗?

谢谢!

0 个答案:

没有答案