我可以在WPF中使WebBrowser半透明且无边界吗?

时间:2014-03-20 01:09:57

标签: c# wpf webbrowser-control

我发现设置不透明值无效。 WebBrowser周围总是有一个边框。

1 个答案:

答案 0 :(得分:1)

来自MSDN上的WPF WebBrowser page

  

WebBrowser控件在内部实例化本机WebBrowser ActiveX控件。

所以它不是一个真正的WPF控件......只是一个本机控件的包装器,它允许很少的自定义。

这里有一个blog,可以很好地总结您 对ActiveX控件所做的事情:

  

如果使用hwndhost控件将Win32组件添加到wpf应用程序中,则存在一些限制:

     
      
  • 调整大小是有限的,因为只会调整容器(hwndhost)的大小,而不是包含的组件本身。
  •   
  • 忘记旋转和倾斜。
  •   
  • 托管组件是应用程序的黑洞:始终位于顶部(忘记z顺序!)。
  •   
  • 不透明度无法应用于托管的Win32控件。
  •   
  • VisualBrush不适用于Win32控件。
  •   

他继续解释WPF 4.5附带的解决方法,但我无法找到那些承诺的功能随处可见的任何地方。他们似乎没有。


关于边境..当我测试它时,我没有。但如果你这样做,我猜测那里也没办法删除它。

这是我在小型测试项目中看到的内容(WebBrowser的边距为20px,而且它位于GroupBox内部,内容为20px):

enter image description here