2013-02-22 71 views
0

我想创建一个使用WPF和MVVM Light的应用程序,但我不知道如何组织我的MVVM应用程序的应用程序布局。这个想法是有一些类似于Visual Studio的东西:WPF和MVVM:Visual Studio像界面

  • 一个带有标签,工具箱和菜单的主窗口,可以停靠并移动到不同的位置。我已经能够使用Telerik WPF控件及其示例轻松创建此布局,但所有内容都在一个简单的XAML文件中,并且它的代码隐藏在后面,我不知道如何将其转换为MVVM应用程序。

我希望每个窗格/窗口/工具箱是与自己的视图模型不同的视图。我查了教程,但没有找到如何让一个应用程序在同一个“主窗口”中同时显示多个视图/视图模型。

我确实在特定的用户控件中定义了每个视图吗?我是否使用ContentControl来组织我的布局?我应该使用数据模板吗?如何在同一窗口中处理多个视图/视图模型的绑定?

非常感谢您的帮助! Doots

+1

不要去想这是在同一时间打开N个不同的看法。只有一个视图/窗口可以打开/活动/专注。考虑到这一点,它就像一个普通的MVVM应用程序。 – jwillmer 2013-02-22 17:18:36

+0

相关:[在WPF中实现multidock窗口系统(如blend,visual studio)](http://stackoverflow.com/a/2255719/2157640) – Palec 2016-10-11 18:00:01

回答

3

看看使用http://avalondock.codeplex.com来获得像Visual Studio一样的布局。然后,您可以将用户控件放置在视图的LayoutPanes中,并将其绑定到您的视图模型。

+0

+1这就是我们在这里所做的,除了我们使用Infragistics XamDockManager(虽然不是免费的)。 – MetalMikester 2013-02-22 19:09:26

1

感谢您的回复!现在我明白了,我认为我的搜索方式太过于复杂,并且比它应该更复杂......

Avalon似乎是一个非常不错的解决方案,但是我拥有Telerik许可证,那么我会为此付出代价。若有人有同样的问题,只是看看洛朗Bugnon这样的回答:http://mvvmlight.codeplex.com/discussions/252035

THX