酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

WebBrowser.NavigateToStringメソッドで実体参照変換しなくても日本語が表示できるかも?

WebBrowserコントロールでローカルのコンテンツを表示する」を書いたところ、WebBrowser.NavigateToStringメソッドで実体参照変換しなくても日本語が表示できるかも?と教えて頂きました。

いくつかのパターンは試してみているのですが、やはり文字化けしちゃっているようです。実体参照変換せずに日本語が表示されるコードを教えてください……

|html| <?xml version="1.0" encoding="UTF-8"?> テストページです。 ||<

だめ。

|html| <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> テストページです。 ||<

だめ。

|html| テストページです。 ||<

だめ。

|html| テストページです。 ||<

だめ。

**(追記)動的にHTMLを書き換えるテクニック

@mikiofukuに教えてもらいました。

あらかじめ、WebBrowser.NavigateToStringメソッドを使って以下のようなHTMLを表示させた後に、InvokeScriptメソッドで表示させたいHTML文字列を流し込むと良いらしい。

|html| ||<

うーん……これはWebBrowser.NavigateToStringメソッドで表示したとは言えないのではw