如何让UI线程能够等待render线程将当前的绘图命令全部执行完毕?
缘由:
我在窗口上画动画,得到动画结束事件之后,进行抓图。我发现所抓的图并不是动画完成之后的景象,而是尚剩余几帧还没画完时的景象。我猜这是由于 render thread 和 UI thread 之间的异步关系造成的。
我的不好的解决方法:
采用 DispatcherTimer 延时,之后再抓图。这个方法不好。
猜测:
有没有类似 OpenGL 那种 Flush(),让所有绘图命令都执行完。这是一种同步调用,直到绘图命令都执行完才会返回。