例如,說我有一個組合框,其itemsSource綁定到依賴項屬性。綁定列表值可以根據許多因素改變。計算這些值需要很少的時間,因此我不希望應用程序在必要時更新集合。只有在視圖中需要數據時(即組合框下降時),MVVM纔會「懶惰地」更新綁定屬性的正確方法是什麼?在需要時更新DP而不是更改
0
A
回答
1
我想一個方法添加到ViewModel
:
class ViewModel {
public void Refresh() {
// ...
}
// ...
}
......並在必要時在你的控制調用它。
class Control : UserControl {
private ViewModel ViewModel = new ViewModel();
void OnDropDown() {
ViewModel.Refresh();
}
// ...
}
1
您的視圖模型應該知道屏幕上的所有綁定的數據,因此它是你的視圖模型在某種程度上將獲取數據的下拉列表。
什麼觸發器取指通常是ViewModel中的「命令」,通常來自按鈕點擊或任何其他視圖事件。
相關問題
- 1. 在元素更改時,是否需要更改CSS屬性?
- 2. 我需要更改鏈接而不更改頁面
- 3. DataGridViewComboBox更改不需要的行時
- 4. 表更新時是否需要更新所有過程?
- 5. Python更新時是否需要更新我的程序?
- 6. Django - 需要TemplateView:Queryset幫助,而不是更新
- 7. UI不更新,而某些函數需要時間來執行?
- 8. JavaScript刷新而不是更改頁面
- 9. 當Django代碼更改時是否需要重新啓動uWSGI?
- 10. 不存在於更新語句需要更多的時間
- 11. 更新http到https時需要更改Paypal的哪些內容?
- 12. 只有更改時才需要更新Hbase。
- 13. 更改PlayStore中的新內容而無需重新更新
- 14. 在我的Mac上更新PHP安裝,而不是更改PATH
- 15. 如何更新XCode 5 DP
- 16. Xaml行爲DP未更新
- 17. 像需要更改
- 18. 僅在需要更新MySQL行時
- 19. 需要在JTextArea中實時更新
- 20. 每次進行更改時是否需要更新服務參考?
- 21. AlarmManager只需更新數據而不需要喚醒屏幕
- 22. 更改背景在郵件一切,而不需要一個DIV
- 23. Mercurial:爲什麼我有時需要合併後而不是簡單地更新?
- 24. UICollectionViewCell在更新時不會更改
- 25. Listview在更新時不會更改
- 26. conditionalPanel在更改條件時不更新
- 27. 如何更新分支而不是將分支從早期的不需要的合併更改爲主分支
- 28. Favicon需要更新
- 29. NSData需要更新
- 30. 如何在Android中獲取當前時間戳,而不需要像更新時鐘那樣更新
謝謝你,這是有道理的,而我正在傾向於。這就是說,OnDropDown msdn參考不會說'when'事件被觸發。你知道,如果它是在下降之前或之後下降?沒有previewDropDown事件。 –
@ach - 不確定,但您可以嘗試捕獲MouseDown事件。 – ken