2013-10-11 75 views
2

顯示Unicode字符我想在WPF 的Web瀏覽器控制不同的語言顯示Unicode字符,但它顯示的特殊字符如何在Web瀏覽器控件在WPF

有沒有設定我的網頁瀏覽器設置控制 ?

+0

您是否嘗試過HTML實體(十六進制)? http://www.fileformat.info/info/unicode/char/200b/index.htm – Paparazzi

+0

向下選民:爲什麼?考慮到仍然不是所有的網站都發送Content-Type:text/html; charset ='在他們的HTTP響應中。 – Noseratio

回答

1

你沒有告訴我們如何你的內容加載到WebBrowser。如果您導航到一個URL,確保服務器發送正確的charset編碼爲HTTP響應頭的Content-Type部分:

Content-Type: text/html; charset=utf-8 

如果在服務器沒有控制,服務器不指定字符集響應內容(一種不好的方式),一旦文檔已被加載,您需要使用DOM document.charset屬性手動設置編碼。此屬性不是由WebBrowser的WPF版本暴露出來,所以你需要使用dynamic

dynamic domDocument = webBrowser.Document; 
domDocument.charset = "Windows-1252"; 

我使用「視窗1252」來作爲例子,你實際上需要通過實驗來如果服務器沒有指定它,請爲特定網頁找到正確的值。將頁面加載到完整的IE瀏覽器,轉到查看/編碼/更多菜單,並找到適用於該頁面的內容。

這就是說,如果你導航到一個字符串(與NavigateToString),它應該支持Unicode字符開箱即用。