如何在WPF中的Web浏览器控件中显示unicode字符

时间:2013-10-11 09:46:20

标签: c# wpf webbrowser-control

我想在WPF的Web浏览器控件中显示不同语言的unicode字符 但它显示特殊字符

我是否需要在网页浏览器控件中设置任何设置?

2 个答案:

答案 0 :(得分:1)

您没有告诉我们您如何将内容加载到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字符。

答案 1 :(得分:0)

您可以尝试通过在导航方法中添加Accept-Language来更改标题。

http://support.microsoft.com/kb/172998

SO链接

How to set Accept and Accept-Language header fields?