日期:2014-05-17  浏览次数:20788 次

关于wpf窗体问题,还望解答
wpf窗体1 window1.运行时是全屏的,有背景图片,界面上有几个图片,按钮,有右键菜单。

等window1加载完成后,会调用一个非托管exe程序,该程序会全屏,且清屏为黑色。

按ESC该程序就会被退出。此时正确的是应该显示window1界面。

目前的问题是,按ESC退出后,window1界面有时候变得一片空白。只有多点几下鼠标左键或者右键,或者按alt+tab切到该界面。才能正常显示。如果什么都不操作的话,会一直空白。

但是有时候按ESC退出后直接就能正常显示。

请问下这个问题应该咋解决,谢谢了。





------解决方案--------------------
那调用进程是异步的还是同步的?
------解决方案--------------------
由于WPF在性能允许的条件下会使用DirectX来为界面渲染加速,如果你调用的程序也使用了DirectX,有可能造成一些问题。建议在程序结束后手动刷新一下界面,使用
C# code

Dispatcher.Invoke(DispatcherPriority.Render, () => { })
//或
UpdateLayout()