將用戶控件加載到MVVM-Light的窗口中的最佳做法是什麼? 哪裏創建UserControl實例,在ViewModel從窗口或直接在窗口中?MVVM-Light:將用戶控件加載到窗口中
0
A
回答
3
如果您擔心最佳做法,則您的虛擬機不應包含任何類似控件的UI特定代碼。例如,如果在虛擬機中有一個屬性控制視圖中控件的可見性,那麼該屬性應該是bool類型而不是「可見性」。該視圖將使用bool屬性來隱藏或顯示控件。
所以你有一個視圖(像一個窗口)哪個數據綁定對虛擬機。 VM中的一些屬性更改會導致窗口中的某些代碼創建並顯示用戶控件。
0
如果您能夠展示使用mvvm燈光的例子,我會很高興。 我也有問題想要與「子窗口」(用戶控件)主窗口顯示/隱藏按鈕點擊從主窗口。 所以我應該創建它們都在同一個地方讓我們說網格列,然後男性他們顯示/通過屬性綁定隱藏?
+0
我認爲這應該被重新修改,並提出一個新的問題,但由於它是從2010年2年半後downvote將是不利的。 – dumbledad 2012-12-04 14:33:16
2
我剛剛讀了this excellent post關於使用MVVM(Light)創建標籤式接口。它沒有談論用戶控件,但目標非常接近。很容易修改以支持用戶控件。
該方法是將選項卡控件綁定到可觀察的工作區集合(ViewModels)。當添加新的選項卡(或工作區)時,它將在ViewModel中實例化,添加到集合中,綁定到視圖並在DataTemplates的幫助下作爲新選項卡呈現。
相關問題
- 1. 如何在運行時將用戶控件添加到窗口?
- 2. WPF在同一個窗口中加載新的用戶控件
- 3. Xuggler將控件添加到VideoImage窗口
- 4. 將javascript函數綁定到窗口加載輸入控件
- 5. 用戶控件在窗口加載時的動畫
- 6. 如何將多個ViewModels添加到主窗口中的用戶控件中
- 7. 將事件添加到Windows窗體中的用戶控件
- 8. 居中彈出窗口/用戶控件
- 9. 將用戶控件綁定到父窗口
- 10. 將用戶控件內容拉伸到主窗口大小WPF
- 11. 使用MVVM在WPF中加載用戶控件後啓動視圖(窗口)
- 12. 如何找到該窗體已加載或用戶控件c#
- 13. 如何將用戶控件添加到WPF窗口上的面板上
- 14. 用戶控件可以在Silverlight 3.0的子窗口中加載嗎?
- 15. 如何將子窗口控件添加到CWindowImpl中
- 16. 將列表框控件中的文本添加到子窗口
- 17. 將窗體提交到新窗口並將頁面加載到窗體中
- 18. WPF動態添加控件到窗口
- 19. 如何將用戶控件加載到splitcontainer.panel2中?
- 20. 在窗口/網格中添加WPF用戶控件QT方式
- 21. 加載用戶控件到的tabcontrol
- 22. 在加載時將用戶控件添加到VB6表單上?
- 23. WPF:Focus在一個窗口,用戶控件
- 24. WPF窗口/用戶控件繼承XAML
- 25. 從用戶控件訪問父窗口
- 26. 在c#窗口中顯示用戶控件控件
- 27. 預加載用戶控件
- 28. 將用戶控件添加到Windows窗體c時出錯#
- 29. 使用MVVMLight將變量傳遞給第二個窗口?
- 30. 將PhoneGap中的XML加載到窗口電話不起作用
你能更具體一點嗎? VM絕對不應該創建一個UserControl。通常,控件通過數據模板注入或直接包含在窗口XAML中。 – 2010-06-10 22:04:14