首页 > 解决方案 > 棱镜库对话服务

问题描述

以下示例从未对我有用: https ://prismlibrary.com/docs/wpf/dialog-service.html

dialogService 来自哪里?

public MainWindowViewModel(IDialogService dialogService)
{
    _dialogService = dialogService;
}

如何添加对话服务?

protected override Window CreateShell()
    {
        var w = Container.Resolve<MainWindow>();
        return w;
    }

它必须在 RegisterTypes 中?

标签: wpfmvvmmodal-dialogprism

解决方案


dialogService 来自哪里?

从容器中。解析时,容器也会解析所有依赖项。

如何添加对话服务?

您不必,通常也不应该这样做。大多数时候,prism 框架提供的默认实现就足够了。

它必须在 RegisterTypes 中?

如果您使用 Unity,则必须注册每个非具体类型才能解析。这意味着,prism 的对话服务实现在某处注册。查看应用程序基类的代码作为起点。


推荐阅读