在WinForms应用程序中呈现HTML的最佳方法?

Mic*_*tum 16 .net html c# webbrowser-control winforms

我有一个WinForms应用程序,在.net 3.5上运行.此应用程序动态生成HTML,其中包括完整的文档,以及内联CSS样式表(在head元素内).

我正在使用WebBrowser控件并将browser.DocumentText设置为我生成的HTML,但这似乎没有在body元素上正确应用样式(我在CSS中将background-color设置为#000000,但背景仍为白色).

我想知道是否a)有一些替代方法可以在C#中呈现相对简单的HTML(即完全托管的HTML呈现器)或b)使用WebBrowser控件呈现HTML的最佳方式,包括正确处理inline-css和不使用使用硬盘上的临时文件.

编辑: CSS-not-applied问题是一个单独的问题.我把我的实际CSS放在CDATA块中,这似乎导致它无法正确应用.现在已经确定了,但问题本身仍然存在.

alt*_*tso 15

对于托管HTML呈现器,请参阅GitHub上的HtmlRenderer.


Mic*_*tum 4

继续使用内置的网络浏览器。其他答案中的 HtmlRenderer 很棒,但会渲染图像。

  • HtmlRenderer 自此更新,现在完全支持文本选择、复制粘贴等。仅供参考。 (9认同)