关于以下代码。
如果我使用内置的MessageBox,那么在显示下一个MessageBox之前必须先关闭它。
如何使用Window实现此目的,以便创建自定义消息框?我尝试使用ShowDialog方法,但是虽然这确实创建了Modal窗口,但它仍然会在级联的同时显示它们。
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Loaded += new RoutedEventHandler(MainWindow_Loaded);
}
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
for (int i = 0; i < 3; ++i)
{
Dispatcher.BeginInvoke(new Action(() => ShowDialog2()));
}
}
void ShowDialog2()
{
//MessageBox.Show("A message");
Window w = new Window() { Width = 200, Height = 200, Content = "SomeText" };
w.ShowDialog();
}
}
答案 0 :(得分:1)
使用ShowDialog
打开第一个窗口实例,并使用Show
方法打开窗口的后续实例。
显示打开非模态窗口,而ShowDialog打开模态窗口。