wpf - 如何以 MVVM 模式加载 wpf 用户控件

标签 wpf mvvm user-controls

我正在创建一个 mvvm 模式的 wpf 用户控件。
所以我们有: View (代码隐藏文件中没有代码)、 View 模型、模型、数据访问文件。

我有 主窗口 .xaml 作为 View 文件,我需要绑定(bind)主窗口模型 。CS。

通常,在 wpf 应用程序中,我们可以使用 App.xaml 文件中的 onStartUp 事件来执行此操作。但是在用户控制中,由于我们没有 App.xaml ......我该如何实现它?

请帮助:(...在此先感谢!!!

最佳答案

您可以使用 ContentControl , 带有 DataTemplate绑定(bind)UserControl ( View )到 ViewModel :

<DataTemplate DataType="{x:Type vm:MyViewModel}">
    <v:MyUserControl />
</DataTemplate>

...

<ContentControl Content="{Binding Current}" />

WPF 将选择 DataTemplate自动基于 Content 的类型

关于wpf - 如何以 MVVM 模式加载 wpf 用户控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2872156/

相关文章:

c# - 在 WPF 中使用 DataTrigger 设置 Grid.Column

c# - WPF 绑定(bind)到选定的单选按钮

asp.net - 文本从包含的框中溢出

c# - 访问 UserControl 中的主窗口控件

c# - 将用户控件添加到 aspx 页面

wpf - 您如何在 WPF 项目中结合直接 View-to-Model 方法和 MVVM 的优势?

c# - WPF 中 Style 内的 RenderTransform 绑定(bind)

entity-framework - 带有 EF DbContext 延迟加载的 MVVM 主/详细 View - 多个 ViewModel,或全部在一个 VM 中

wpf - 我应该如何使用 MVVM 移动 WPF 窗口?

wpf - 当前的 MVVM View 模型是否违反了单一职责原则?