我的应用程序基于WPF。在主窗口正忙或正在执行某些任务时打开自定义忙指示符
任务是我需要显示一个自定义的繁忙指标,而一些工作在主窗口(因为应用程序的用户界面将冻结,直到它完成任务)。所以我特别想是如下
// Code in main window
CustomBusyIndicator.ShowDialog();
//....
//..code that takes time
//....
CustomBusyIndicator.Close();
所以我必须实现,必须能够灵活地在我的主要应用程序的任何地方打电话,指示繁忙的窗口。
这两点应该牢记, 1.当我告诉CustomBusyIndicator,在背景中的主窗口,应运行它的任务 2.当我告诉CustomBusyIndicator的CustomBusyIndicator应该总是在主窗口顶部,用户必须无法使用主窗口,如果他使用Start + Tab切换到其他应用程序,并且切换回我的应用程序时,CustomBusyIndicator应该位于顶部(如果未关闭)。
当任务完成后,我应该能够调用close()方法来关闭CustomBusyIndicator,如代码所示。
不错的解决方案,但如果OP不知道异步等待,我不会建议他使用它。一个简单的编程规则。不要使用你不明白的东西。我决不会对Rufo的解决方案产生负面影响,完全不是这是一个更好的解决方案,而且比我的更现代化。我只是在预测OP的经验,这个问题说明了一切。我不认为他对线程知之甚多。 –