在C#的WinForms开发中,WebBrowser控件基于IE内核,可以用来加载并显示XML内容。通过简单的属性赋值或导航方法,就能把本地或内存中的XML呈现出来,方便做配置查看或数据预览。

通过DocumentText加载XML字符串
最直接的方式是把XML字符串赋给WebBrowser的DocumentText属性,控件会立即解析并渲染。注意字符串应为UTF-8或带正确声明头的XML。
using System;
using System.Windows.Forms;
namespace XmlDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// 定义一段XML字符串
string xml = "<?xml version='1.0' encoding='utf-8'?><root><item>测试</item></root>";
// 加载到WebBrowser
webBrowser1.DocumentText = xml;
}
}
}
使用Navigate加载本地XML文件
如果XML在磁盘上,可调用Navigate方法传入文件路径。使用Application.StartupPath可避免相对路径问题。
using System;
using System.Windows.Forms;
namespace XmlDemo
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// 拼接本地文件路径
string path = Application.StartupPath + "\data.xml";
// 导航到该XML文件
webBrowser1.Navigate(path);
}
}
}
让XML显示更友好
若希望XML以自定义样式显示,可在XML中引用XSLT,或先使用XDocument转换后再赋给DocumentText。如下为带内嵌样式的XML示例结构:
- XML声明头部指定版本与编码
- 根节点包含业务数据
- 通过xml-stylesheet引入XSL提升可读性
带样式引用的XML示例
<?xml version='1.0' encoding='utf-8'?> <?xml-stylesheet type='text/xsl' href='style.xsl'?> <root> <item>示例</item> </root>
常见问题说明
当XML含有特殊字符时,必须按规则转义,否则DocumentText可能空白。WebBrowser默认的IE模式对HTML标签名称如<table>会按HTML解析,纯XML则按XML视图展现。
建议调试时先确认XML格式正确,再用webBrowser1.Refresh()强制刷新视图。
| 方式 | 适用场景 |
|---|---|
| DocumentText | 内存中动态生成XML |
| Navigate | 已存在本地XML文件 |
小结
利用C#的WebBrowser控件加载和显示XML并不复杂,核心在于选对赋值或导航方式,并保证XML本身规范。掌握上述方法即可在桌面程序中轻松集成XML预览能力。
C#WebBrowserXML修改时间:2026-07-26 06:00:17