WPF 嵌入Winform GDI 、 开启AllowsTransparenc问题

此文章可以解决2至少2个问题:

1.开启AllowsTransparenc造成的GDI+组件不显示问题

2.WPF 组件无法覆盖嵌入WPF窗口的任何第三方GDI+组件上层

 

方案1:自制双层

原理:用一个新的窗口来承载GDI+组件,实现 父窗口 拖动、缩放、最小化、最大化 的联动 事件。
缺点:电脑性能太差会出现重影。

方案2:微软解决空域的方案

原理:用一个新的窗口来承载GDI+组件,实现 父窗口 拖动、缩放、最小化、最大化 的联动 事件。
缺点:电脑性能太差会出现重影。

<interop:AirspaceDecorator AirspaceMode="Redirect"
              Background="{DynamicResource WhiteColorBrush}"
              IsInputRedirectionEnabled="True"
              IsOutputRedirectionEnabled="True">
          <WebBrowser x:Name="WebBrowser" />
</interop:AirspaceDecorator>

           

 

posted on 2018-04-11 11:02  梦机器  阅读(849)  评论(0编辑  收藏  举报