しばらく更新サボってRSSリーダー作ってました。そこそこDesktopSidebarをぱくったものが出来上がってきました。そのうち公開したいと思います。
そういうわけでC#の話ですが、WebbrowserでファイルやURLじゃなく、文字列に格納されたHTMLを表示したい場合です。
string html = "<html><body>hoge</body></html>";
webbrowser1.DocumentText = html;
とまあ、こんな簡単な感じに動的なHTMLを表示させることができます。
が、これだと更新できないみたいなんです。
つまり、上記のようにHTMLを表示させた後、
webbrowser1.DocumentText = html2;
とやっても表示されません。
そういうときはDocument.OpenNew(), Document.Write()を使えばいけます。
if (this.webbrowser1.Document != null)
{
this.webbrowser1.Document.OpenNew(true);
this.webbrowser1.Document.Write(htmlString);
}
else
{
this.webbrowser1.DocumentText = htmlString;
}
注意しないといけないのは、最初Documentプロパティはnullであることです。
なので一発目はDocumentTextに直接入れて、次からはOpenNew(), Write()でやることにしてみました。
以上
Add Your Comment
上のコメントのものです。間違えてコメントをPOSTしてしまいました。申し訳ありません。