也许您会说这样写就可以啦.
webBrowser.DocumentText = xmlDoc.OuterXml;
其实这样是错的,这样不会显示XML的结构。
本来以为可以设置webBrowser.DocumentType=”text/xml”;
无奈,WebBrowser.DocumentType是只读类型的。
查了一下资料,原来是要用System.Xml.XslCompiledTransform去格式化一下
Ok, lets’ do it.
Example Code:
string xml=xmlDoc.OuterXml;//xmlDoc是XmlDocument类型
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load("xml-pretty-print.xsl");
TextReader tr = new StringReader(xml);
XPathDocument xpath = new XPathDocument(tr);
TextWriter tw = new StringWriter();
XmlWriter xwriter = XmlWriter.Create(tw);
xslt.Transform(xpath, xwriter);
xmlBrowser.DocumentText = tw.ToString();//xmlBrowser是一个WebBrowser控件
参考了一下文章:
http://www.cnblogs.com/skyfei/archive/2008/04/18/1160302.html
http://www.cnblogs.com/cstded/archive/2008/01/16/1041368.html (非常详细,推荐)
http://www.biglist.com/lists/xsl-list/archives/200003/msg00769.html
其中第二篇博文提到的defualtss.xsl俺木有获取到。就用了第三篇文章的xml-pretty-print.xsl内容是一样的:)
