Web浏览器中的透明内容

时间:2013-07-03 16:14:27

标签: c# wpf browser opacity transparent

我的任务是在WPF应用中显示半透明元素的HTML内容。透明度应该通过Webbrowser和窗口进行。 Web浏览器本身不应该是半透明的。 所以我需要一个HTML内容,我需要通过它看到桌面。

有没有办法做那样的事情?

谢谢。

P.S。:对不起我的英语。

3 个答案:

答案 0 :(得分:3)

Awesomium Awesomium.NET 是支持此功能的HTML UI引擎。

检查WPF WebControl。您可以将WebControl.IsTransparent设置为true,并使用body { background-color: transparent; }加载一些内容(您甚至可以使用WebSession指定要应用于所有已加载页面的自定义CSS)。

答案 1 :(得分:1)

目前无法做到这一点;这是由于Web浏览器控件的呈现方式。它不是真正的WPF控件,而是围绕COM组件的WPF包装器。这限制了可用的功能,并且还导致其他问题,例如缺乏将WPF控件浮动到其顶部的能力。

我相信Windows 8.1应用程序会有一个新的WebView控件(在Build 2013中演示)。这可能提供更大的灵活性,虽然我不确定这是否是Windows 8.1应用程序的事情,或者它是否也可以作为.NET 4.5.1的一部分用于WPF应用程序。

答案 2 :(得分:0)

WPF Web浏览器控件在技术上是一个包装的WinForms WebBrowser控件,因此它在WinForms层中呈现,该层始终位于WPF层之上。您可以使用Awesomium.NET浏览器而不是IE浏览器或转换您的{{ 3}}代码并显示在Html code to Xmal控件中。Flow Document