我有一个DataGridView用户输入数据。然后,用户可以将其另存为XML,由另一个应用程序监听它。用户还可以将任何预先存在的文件读回到DataGridView中。得到的保存XML看起来像这样(缩短版)试图读取XML文件到datagridview
<?xml version="1.0" encoding="us-ascii"?>
<jet_texts>
<message001>
<line 1 />
<line 2>e</line 2>
</message001>
<message002>
<line 1>r</line 1>
<line 2>t</line 2>
</message002>
<message003>
<line 1 />
<line 2 />
</message003>
<message004>
<line 1>B</line 1>
<line 2>A</line 2>
</message004>
</jet_texts>
我试着通过如下
DataSet ds = new DataSet();
ds.ReadXml(xml_file);
dataGridView1.DataSource = ds.Tables[0].DefaultView;
我得到的是一条线,当我想4线我甚结合它读这回希望不包含文本的项目只是空白。我不确定为什么我无法得到它们,因为我尝试了所有我能想到的东西,但一定错过了正确的答案?
它可能将每个Message001等视为表与行。您的XML元素需要具有相同的名称才能被视为在下一级元素jet_texts中重复值。如果您不控制XML,那么您可能需要对XML执行linq操作以提取包含消息的所有元素作为jet_texts节点下的名称。 – Bearcat9425
如果一切都失败了,XmlReader类可以帮助你。 – Wilsu