首页 > 解决方案 > 加载数据网格行详细信息中的wpf数据绑定时如何window.showDialog

问题描述

我正在将ObservableCollection视图模型绑定到它。每个视图模型都用于数据网格行详细信息加载。当数据库的数据加载然后显示window.ShowDialog并在for循环完成后自动关闭窗口

标签: c#wpfdatagridprogress-bar

解决方案


对于您的情况,您想使用window.Show()而不是window.ShowDialog().

以下是它们之间的区别:

  • window.Show();

代码不会停止。这意味着您打开窗口并且代码继续执行。在上面的示例中,它将执行“从数据库获取数据”和“for 循环”。使用此方法,用户可以在应用程序中的窗口之间切换。在应用程序执行正常进行时使用

  • window.ShowDialog();

代码停止,直到窗口关闭。它将从新窗口执行代码,但在上面的示例中,它只会在他的代码中关闭窗口后继续“从数据库获取数据”。在这种情况下,只有打开的窗口才会响应用户输入,直到它关闭

你应该这样做:

 Window win = new window();
 win.Show();

 //get data from database
 //do for loop

 win.Close();

推荐阅读