例如,假设我有一个组合框,其 itemsSource 绑定到依赖项属性。绑定列表值可以根据许多因素而改变。计算这些值需要大量时间,因此除非必要,否则我不希望应用程序更新集合。仅当视图中需要数据时(即当组合框下拉时),MVVM 中“懒惰”更新绑定属性的正确方法是什么?
问问题
58 次
2 回答
1
我会添加一个方法ViewModel
:
class ViewModel {
public void Refresh() {
// ...
}
// ...
}
...并在必要时在您的控制范围内调用它。
class Control : UserControl {
private ViewModel ViewModel = new ViewModel();
void OnDropDown() {
ViewModel.Refresh();
}
// ...
}
于 2012-05-07T18:41:29.143 回答
1
您的 ViewModel 应该知道屏幕上的所有绑定数据,因此您的 ViewModel 会以某种方式获取下拉列表的数据。
触发获取的通常是 ViewModel 中的“命令”,通常来自按钮单击或任何其他视图事件。
于 2012-05-07T18:44:06.170 回答