我想在 WPF 的 Web 浏览器控件中显示不同语言的 unicode 字符,但它显示特殊字符
我必须在网络浏览器控件中设置任何设置吗?
您没有告诉我们您如何将内容加载到WebBrowser
. 如果您导航到 URL,请确保服务器在 HTTP 响应标头中发送正确charset
的编码:Content-Type
Content-Type: text/html; charset=utf-8
如果您无法控制服务器,并且服务器没有在响应内容中指定字符集(一种不好的方式),则需要在加载文档后使用 DOM document.charset属性手动设置编码. WPF 版本不公开此属性WebBrowser
,因此您需要使用dynamic
:
dynamic domDocument = webBrowser.Document;
domDocument.charset = "Windows-1252";
我在这里使用“Windows-1252”作为示例,如果服务器没有指定它,您实际上需要尝试找到特定网页的正确值。将页面加载到完整的 IE 中,转到查看/编码/更多菜单并找到适用于该页面的内容。
也就是说,如果您导航到一个字符串(带有NavigateToString
),它应该支持开箱即用的 Unicode 字符。