【发布时间】:2015-06-17 22:44:01
【问题描述】:
我已经这样做了Window.Show() doesn't display controls but Window.ShowDialog() does 来解决问题。但尽管如此,我也有同样的问题。如何修改下面的代码来解决这个问题?
TimeWindow aTimeWindow = new TimeWindow();
BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += ((o, ea) => {
// Highly time consumable task
_resetEvent.Set();
});
aTimeWindow.Show();
bw.RunWorkerAsync();
_resetEvent.WaitOne();
aTimeWindow.Close();
_resetEvent 是类的一个字段。 TimeWindow 只是带有TextBox WPF 控件的图像。
【问题讨论】:
-
你仍然在阻塞,而不是使用重置事件,只需在工作完成后关闭
DoWork委托的时间窗口。