我正在使用DockPanel
为我的布局创建一个应用程序。在“左”DockPanel
中,我设置了一些链接(标签),我想用它来点击链接时打开不同的UserControls
。我希望在单击适当的链接时,UserControls
始终在'右'DockPanel中打开。
我将使用WPF(使用MVVM)中的哪种机制来实现此目的?我有什么例子可以查看吗?
答案 0 :(得分:4)
要遵循的一般模式是:
ContentPresenter
添加到您的用户界面中将托管可切换内容的位置(在您的情况下为DockPanel
的右侧面板)。Content
的{{1}}属性绑定到视图模型中属于viewModel类型的属性,该属性表示视图E.G. ContentPresenter
。BoundContent
事件来通知您的视图来对此作出反应。PropertyChanged
将每个用户控件映射到每个viewModel。Rachel Lims博客包含几个展示上述内容的示例: