IE で使用されるデフォルトの XSL の使用についての説明がここにあります。
これは、アクセスできないように見えるため、その記事からコピーして貼り付けたものです。クレジットは著者に送られます:
Internet Explorer は、XML を適切な方法で表示します。今日、同じエンジンを使用して .NET 2.0 アプリケーションで XML を表示しようと考えました。そこで、WebBrowser コントロールをフォームにドロップし、XML 文字列を DocumentText プロパティに割り当てました。出来上がり?もちろん違います。
掘り下げた結果、IE は組み込みの XSLT 変換を使用して、ブラウザーで XML を HTML として表示することがわかりました。問題のスタイルシートは、IE の次の uri から入手できます: res://msxml.dll/defaultss.xsl。では、この文字列を保存して .NET で使用できますか? そうではありません。結局のところ、IE が使用する XSL は .NET の XslCompiledTransform クラスと互換性がありません。ああ!
さらに掘り下げた結果、Steve Muench が .NET に必要な XSLT 1.0 REC への変換を行ったことが判明しました。ありがとう!ファイルはこちらからダウンロードできます。
次のコードを WebBrowser 基本クラスに追加して、開発者がプロパティを設定して XML を表示できるようにしました。
public XmlDocument DocumentXml
{
set
{
Stream s = <defaultss.xsl from embedded resource file>
XmlReader xr = XmlReader.Create(s);
XslCompiledTransform xct = new XslCompiledTransform();
xct.Load(xr);
StringBuilder sb = new StringBuilder();
XmlWriter xw = XmlWriter.Create(sb);
xct.Transform(value, xw);
this.DocumentText = sb.ToString();
}
}