【发布时间】:2015-01-23 03:27:25
【问题描述】:
我有一个 WPF 应用程序,它有一个主窗口和一个可以从主窗口中的按钮打开的第二个窗口。我希望禁用主窗口,而第二个窗口在 Visual Studio 中作为“关于”窗口打开。
【问题讨论】:
标签: c# wpf wpf-controls
我有一个 WPF 应用程序,它有一个主窗口和一个可以从主窗口中的按钮打开的第二个窗口。我希望禁用主窗口,而第二个窗口在 Visual Studio 中作为“关于”窗口打开。
【问题讨论】:
标签: c# wpf wpf-controls
尝试使用ShowDialog method 而不是Show 以将第二个窗口作为对话框打开。
您已经有一个带有窗口的 WPF 项目。这个应用程序应该可以工作。
右键单击项目并添加新窗口。你把它命名为 Window1.xaml
您现在会注意到 Window1.xaml 和 Window1.xaml.cs 添加到您的项目中。 (窗口的类名是 .xaml.cs 文件中的 Window1,它派生自 Window;也是一个部分类)
打开 Window1 的 XAML 文件 (Window1.xaml) 并添加您的控件。像对待任何其他窗口一样对待它并编写代码。
现在在您的主窗口(第一个)中添加一个按钮,单击该按钮应显示新创建的窗口。
对于 Click 处理程序中的那个,......
var newWindow = new Window1();
newWindow.ShowDialog();
这个Window1 应该是您的“关于”页面的设计。使用ShowDialog(); 调用它会禁用其他窗口,唯一的活动窗口将是您的关于页面。
【讨论】:
ShowDialog() 和 Show() 方法之间存在差异。 ShowDialog() 使子窗口处于活动状态并保持活动状态,直到它关闭;但是,Show() 方法会打开一个新窗口并将其视为一个单独的实体。在这种情况下,每次点击都会启动一个新窗口。
例如
Window1 childWin= new Window1();
childWin.ShowDialog();
OR
childWin.Show();
【讨论】: