首页 > 解决方案 > MessageBox/ShowDialog() 如何阻止程序继续运行?

问题描述

当您显示一个MessageBox或其他类型的对话框(例如OpenFileDialog您创建并调用的窗口)时ShowDialog(),该方法内部发生了什么以防止应用程序在等待DialogResult设置时继续运行?

public static bool MyDialog.Show(string message) {
   //what happens here to keep the program from continuing?

   //Oh! DialogResult was finally set...
   return DialogResult;
}


private void OkButton_Click(object sender, RoutedEventArgs e) {
    DialogResult = true
}

它不像您可以只放置一个 while(true) 循环并等待用户点击确定,那么在后台实际发生了什么?

标签: c#wpf

解决方案


推荐阅读