我是.net和MVVM designmodel的新手。我現在卡住了,因爲在我的一個視圖的代碼隱藏文件中,我需要將相應的模型作爲對象。這裏的關係如何?是否有可能,是否是「正確的做法」?MVVM從視圖訪問模型
5
A
回答
5
視圖應該訪問包裝模型的ViewModel,從視圖中隱藏它。如果您需要從視圖中訪問模型的屬性,請使用ViewModel將它們公開爲View可以綁定到的屬性。
1
ViewModel應該完全不知道該視圖。 View只能使用DataBinding,所以不知道模型或ViewModel。
如果您需要與視圖交互,則全部必須通過DataBinding。只有在特殊情況下,您應該訴諸代碼隱藏。
因此有一個財產上的ViewModel和綁定它的視圖。
+0
他想從視圖訪問模型,而不是相反。 – 2010-11-26 17:03:53
0
public partial class MyView : Window
{
private MyViewModel aModel;
public MyView()
{
InitializeComponent();
aModel = new MyViewModel();
this.DataContext = aModel();
}
現在視圖將更改其綁定到ViewModel的公共屬性的控件數據綁定。
1
MVVM不禁止View直接訪問模型。這是MVVM社區中常見的誤解。
您的ViewModel可以公開底層模型,以便View可以直接訪問該模型。
裝訂:
{Binding Model.Title}
代碼背後:
((MyViewModel)DataContext).Title
的WPF Application Framework (WAF)的視圖模型(EmailClient)示例應用程序顯示瞭如何從視圖訪問模型。
相關問題
- 1. WPF MVVM:從視圖模型訪問列表視圖對象
- 2. 訪問視圖從視圖模型WPF MVVM
- 3. WPF MVVM:從視圖模型
- 4. MVVM視圖模型和模型問題
- 5. 從集合中訪問MVVM父視圖模型
- 6. 從視圖訪問模型時出錯
- 7. 從視圖模型訪問Unity容器
- 8. 如何從視圖訪問模型?
- 9. backbone.js /從模型訪問視圖
- 10. 從部分視圖訪問父模型
- 11. 從視圖模型在MVVM架構
- 12. MVVM Datagrid從視圖和模型更新
- 13. 在MVVM Light中訪問其他視圖模型中的屬性
- 14. MVVM視圖模型參考視圖
- 15. MVVM - 關於模型和視圖模型的幾個問題
- 16. 關於視圖和視圖模型的Silverlight MVVM問題
- 17. 訪問視圖模型屬性視圖模型
- 18. MVVM和從模型到視圖模型的隱式轉換
- 19. 從另一個視圖訪問一個視圖模型
- 20. MVVM模式視圖的特定模型?
- 21. 從現有視圖模型訪問視圖模型的正確方法
- 22. MVVM實踐訪問整個視圖
- 23. 從視圖模型訪問視覺子元素wpf
- 24. MVC訪問的視圖模型在
- 25. 部分視圖無法訪問模型
- 26. 在部分視圖中訪問模型
- 27. WPF訪問父視圖模型
- 28. ASP.net MVC - 視圖如何訪問模型?
- 29. 訪問視圖模型的的ObservableCollection
- 30. Backbone.js中的訪問模型視圖
好的,我覺得答案就是這樣的。但我仍然有一些問題。 當我點擊類型A的視圖1我希望它保存其viewmodel中的相應模型。當我點擊類型A的視圖2時,我也希望它在相同的viewmodel中保存其對應的模型。到目前爲止,我只知道如何自我保存(視圖)而不是模型:/ – Andreas 2010-11-26 17:37:39