Csharp/C#教程:浏览主窗口中包含的多个子视图分享


浏览主窗口中包含的多个子视图

我正在开发一个WPF MVVM应用程序,我需要一个只有一个徽标的主窗口,它必须在其中显示子视图。 我在主窗口中没有任何控件,所有控件都驻留在子视图中,例如按钮,如Next,Back,Cancel和一些文本块等。现在如果用户在子视图上选择Next按钮,我必须绘制或加载下一个主窗口内的子视图。 如果单击“后退”按钮,则必须返回上一个子视图。 所以基本上我根据点击的按钮更改子视图。 此外,我正在为每个子视图维护不同的视图模型。 现在的问题是我无法想象如何将子视图链接到各自的视图模型。 这个应用程序类似于一些安装应用程序,根据选择和用户点击的按钮显示不同的对话框。我是这个wpf的新手,不想使用MVVM Light,Prism等。任何详细的帮助都会很大赞赏。 提前致谢。

将任何数据类型与XAML控件相关联的最简单方法之一是使用DataTemplate 。 因此,您可以简单地将类似的内容添加到Application.Resources ,只要您不在DataTemplate上设置x:Key属性,只要它遇到视图模型的实例,它们就会被框架显式应用。 :

    ...    

然后显示视图就像这样简单:

  

在后面的代码或您的视图模型中:

 YourViewModelProperty = new MainViewModel(); 

为视图模型创建基类通常很方便,然后您可以使用相同的属性和ContentControl来交换它们的YourViewModelProperty


更新>>>

一般的想法是你有一个MainViewModel类,其中一个BaseViewModel属性数据绑定到MainWindow.xaml一个ContentControl ……导航控件也应该在MainWindow.xaml而不是在视图中。 这样, MainViewModel类负责在从MainWindow.xaml接收导航Command时将属性更改为相关的视图模型实例。

上述就是C#学习教程:浏览主窗口中包含的多个子视图分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/998080.html

(0)
上一篇 2021年12月26日
下一篇 2021年12月26日

精彩推荐