2010-08-18 77 views
2

我对WPF很新,并且正在尝试设置需要切换视图的应用程序。如何在使用Unity和MVVM的WPF应用程序中切换视图?

例如,用户正在查看包含多个组件的系统,当他们单击组件时,应该切换到与该组件关联的视图,替换以前的系统视图。这是我理解的一个控制器应该在这里使用,但实施避开了我。

我找到了几个例子,但是这些项目对我来说有点太大,无法真正跟踪视图切换的具体内容。这里真正帮助我的是来自App文件中Unity设置的一些示例代码,它允许多个视图,控制器中用于切换视图的代码以及与使控制器切换视图的按钮相关的代码。

感谢

回答

1

如果你只是用WPF和潜水开始直接进入使用的IoC/MVVM,那么你可能要考虑退后一步,并与WPF基本面出发,即布局,路由事件,指挥,绑定,依赖属性,INotifyPropertyChanged等...

为了让您开始:tutorials on wpf and mvvm

对于我们大多数人来说,WPF有着陡峭的学习曲线。然而,一旦你完成了第一个小时,那个'aha时刻'就会开始有规律地开始。

+0

我确实有合作得非常好了几页。我目前正在使用一个只在不同用户控件之间切换的shell切换视图,但我觉得这样做最终会导致长期运行的问题,我还没有真正看到这种方法在其他示例中使用。照顾这个的控制器是我真正挣扎的地方。我对这个项目也有很好的了解,因为我将一个已经存在的asp.net网站转换成一个wpf桌面应用程序,所以很多后端已经完成了。 – Justin 2010-08-19 06:37:43

0

我使用Mvvm-Light,但我相信Unity会是类似的。

你应该有一个ViewModelLocator注册ViewModels。

您应该有某处样式或数据模板,告诉框架根据遇到的视图模型显示哪个视图。

你应该有一些你绑定到的属性,这是一个基本视图模型。

从那里开始,您只需将该属性更改为不同的视图模型,您的视图就会相应更新。

新城说,陡峭的学习曲线,但一旦你习惯了它,它开始变得有意义:)

相关问题