gpt4 book ai didi

wpf - 当 View 模型在构造函数中有参数时,如何将 View 模型连接到 View ?

转载 作者:行者123 更新时间:2023-12-04 14:27:44 24 4
gpt4 key购买 nike

我正在使用 Prism 和 Unity 使用 MVVM 模式重写 WPF 应用程序。大多数 View 通过 DataContext 属性连接到 VM,如下所示:

<UserControl.DataContext>
<VM:RibbonViewModel/>
</UserControl.DataContext>

问题是,当 ViewModel 的构造函数中有参数时,此方法将不起作用。
public RibbonViewModel(IEventAggregator eventAggregator)
{
this.eventAggregator = eventAggregator;
}

我得到错误:

类型“RibbonViewModel”不能用作对象元素,因为它不是公共(public)的或未定义公共(public)无参数构造函数或类型转换器。

有参数时如何将 VM 连接到 View ?

最佳答案

您可以查看 的示例应用程序。 WPF Application Framework (WAF) .在这些示例中,IoC 容器(在您的情况下为 Unity)负责创建 ViewModel。这样一个 ViewModel 可以有构造函数参数。 IoC 容器还负责将 View 与 ViewModel 结合在一起。也许这也是您的 ViewModel 设计的一个选项。

关于wpf - 当 View 模型在构造函数中有参数时,如何将 View 模型连接到 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4755617/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com