【问题标题】:Prism WPF: How to Open A New Window/DialogPrism WPF:如何打开新窗口/对话框
【发布时间】:2018-05-27 07:11:46
【问题描述】:

使用后面的代码时,代码如下:

AnotherWindow x = new AnotherWindow();
x.Show() ;
// or x.ShowDialog()

但是我怎样才能使用 MVVM 来实现呢?特别是棱镜?

【问题讨论】:

    标签: c# wpf mvvm prism


    【解决方案1】:

    如果您需要构建一个对话框来询问用户登录输入或进行对话框,MahApps.Metro 可以成为一个有用的工具包,因为它为您提供了一些带有 MVVM 模式的内置对话框 UI/功能。有关更多信息,请在此处查看一些示例: https://mahapps.com/controls/dialogs.html

    【讨论】:

      【解决方案2】:

      在 Prism 中,InteractionRequest 用于短期对话。如果您正在寻找一个长期存在的对话框,例如第二个应用程序窗口或 shell,那么您会被 new Window ... Show 卡住。

      要使您的对话服务对 mvvm 友好,您应该将其隐藏在界面后面并使其尽可能通用。此处先使用视图模型无需指定窗口类型,因为您可以提供一个仅包含一个大ContentControl 的默认窗口,并且可以将视图映射为DataTemplate

      【讨论】:

        猜你喜欢
        • 2017-05-18
        • 2019-01-01
        • 1970-01-01
        • 2023-03-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-01-21
        相关资源
        最近更新 更多