将用户控件加载到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. Xuggler将控件添加到VideoImage窗口
- 3. 将javascript函数绑定到窗口加载输入控件
- 4. 如何将多个ViewModels添加到主窗口中的用户控件中
- 5. 将事件添加到Windows窗体中的用户控件
- 6. 居中弹出窗口/用户控件
- 7. 使用MVVM在WPF中加载用户控件后启动视图(窗口)
- 8. 如何找到该窗体已加载或用户控件c#
- 9. 用户控件可以在Silverlight 3.0的子窗口中加载吗?
- 10. 如何将子窗口控件添加到CWindowImpl中
- 11. WPF动态添加控件到窗口
- 12. 如何将用户控件加载到splitcontainer.panel2中?
- 13. 在窗口/网格中添加WPF用户控件QT方式
- 14. 从用户控件访问父窗口
- 15. WPF:Focus在一个窗口,用户控件
- 16. WPF窗口/用户控件继承XAML
- 17. 在c#窗口中显示用户控件控件
- 18. 预加载用户控件
- 19. 将用户控件添加到Windows窗体c时出错#
- 20. 使用MVVMLight将变量传递给第二个窗口?
- 21. 将PhoneGap中的XML加载到窗口电话不起作用
- 22. 如何将加载窗口添加到sencha加载中的图表中
- 23. 窗口最小化时,如何动态地将控件添加到窗体窗体splitter控件中?
- 24. 将操作从用户控件传递到其他窗口中的Worker_DoWork
- 25. 找到与WPF和MVVM/MVVMLight中的ViewModel相关的窗口
- 26. 将目录加载到树控件中
- 27. 将用户控件添加到winforms statusstrip控件中
- 28. 无法将AjaxToolkit控件添加到用户控件中
- 29. 在WPF中加载用户控件
- 30. 将参数发送到动态加载的用户控件
你能更具体一点吗? VM绝对不应该创建一个UserControl。通常,控件通过数据模板注入或直接包含在窗口XAML中。 – 2010-06-10 22:04:14