我使用了一些需要花费一些时间(~3-5秒)来渲染的第三方组件--在分析之后,我得出结论,大部分时间都浪费在这些控件的MeasureOverride和渲染方法上了……我不能编辑这些组件的源代码。问题是..当界面被“绘制”时,我可以显示一个忙碌的指示器吗?在WPF中是可能的吗?
发布于 2010-09-07 16:30:20
不,你不能,嗯,不能以一种好的方式。
UI线程正忙于渲染-绘制繁忙指示器将需要相同的线程来绘制指示器。
现在,您可以从另一个线程创建第二个窗口(可能是半透明的),并将该窗口放在冻结的窗口之上,但这很难做到,您必须处理诸如用户移动窗口(并且您永远不会知道窗口移动了,因为接受移动通知的线程正忙)或在两个窗口之间弹出其他应用程序之类的事情
此外,这可能会干扰第一个窗口绘制,并且通常只需要许多角落情况才能正确完成。
https://stackoverflow.com/questions/3653668
复制相似问题