我正在使用PushFrame来确保窗口在执行其他代码之前完成绘制。我的应用程序有一些时间敏感的功能,需要在继续执行代码之前更新窗口。
所以我使用了msdn中的示例:http://msdn.microsoft.com/en-us/library/vstudio/system.windows.threading.dispatcher.pushframe(v=vs.110).aspx 这很好用,但是如果用户在执行此代码时拖动我的窗口,则窗口会挂起,只能通过ctrl-alt-del获取它的控制权。
有什么想法吗?
所以我使用了msdn中的示例:http://msdn.microsoft.com/en-us/library/vstudio/system.windows.threading.dispatcher.pushframe(v=vs.110).aspx 这很好用,但是如果用户在执行此代码时拖动我的窗口,则窗口会挂起,只能通过ctrl-alt-del获取它的控制权。
有什么想法吗?
DispatcherPriority.ApplicationIdle
可以确保您的代码在其他所有操作完成后才被调用。顺便说一句,“painted”这个词听起来太winforms了。您实际上想做什么? - Federico BerasateguiTaskScheduler.FromCurrentSynchronizationContext
。 - Federico Berasategui