WPF从UserControl打开模态窗口

4
我在我的WPF应用程序中有一个MainWindow。
这个MainWindow在左侧有一个菜单,当选择菜单选项时,右侧会加载一个UserControl。 这类似于asp.net中的Master Pages。
现在我想做的是从UserControl中显示一个模态窗口,只允许用户与模态窗口交互。
我已经看到了主窗口显示模态窗口的示例(http://www.codeproject.com/Articles/36516/WPF-Modal-Dialog),但不确定如何从UserControl加载它。
2个回答

1

这里有一个链接:对话框和mvvm,但下面是我见过的最好的处理方法的示例:mvvm和关闭表单

我没有使用第一个链接,在寻找第二个链接发布到这里时偶然发现了它。第二个链接有两个下载选项,您可以忽略_service下载,因为它基本相同。


谢谢您的快速回复。我已经快速查看了它,想知道如果我有一个需要打开模态窗口的用户控件,这是否会对我有所帮助。 - Nollaig

0

WPF中的一种方法如下:

  1. 将一个新的Window添加到项目中。
  2. 根据需要在窗口上添加其他控件。
  3. 在XAML中为窗口命名,例如x:Name="MyWindow"
  4. 在窗口上放置依赖属性,并使每个控件绑定到窗口的数据上下文,例如{Binding MyText, ElementName=MyWindow}。(注意,即使对于WPF,我仍然使用Visual Studio代码片段来添加不同的依赖属性,这可以节省非常冗余的操作时间:Silverlight Snippets)。
  5. 在要启动模态对话框的位置使用以下示例:

示例:

 var about = new About(); // Create the new window

 // I've added a CompanyName dependency property.
 about.CompanyName = "OmegaMan Industries";

 about.ShowDialog();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接