winform操作datagridview读写xml文件
时间: 2023-10-10 10:03:09 浏览: 67
在WinForm中操作DataGridView读写XML文件可以通过以下步骤实现:
1. 首先,创建一个WinForm应用程序,并向窗体中添加一个DataGridView控件。
2. 在窗体的Load事件中,读取XML文件内容,并将其加载到DataGridView中。可以使用XmlDocument类来读取XML文件,使用其Load方法加载文件,并使用SelectNodes方法获取需要的节点数据。
3. 将XML文件中的数据添加到DataGridView中,可以通过遍历获取到的节点数据,将其添加到DataGridView的行中。
4. 编写保存按钮的Click事件处理方法,在该方法中将DataGridView中的数据保存为XML文件。可以使用XmlDocument类来创建XML文档对象,并使用其CreateElement、CreateAttribute等方法创建XML节点和属性,并将DataGridView中的数据逐一添加到XML文件中,最后使用Save方法保存XML文件。
5. 在保存XML文件之后,可以通过重新加载XML文件的方式更新DataGridView中的数据显示。
示例代码如下:
private void Form1_Load(object sender, EventArgs e)
{
// 读取XML文件
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("data.xml");
// 获取需要的节点数据
XmlNodeList nodes = xmlDoc.SelectNodes("/root/item");
// 添加节点数据到DataGridView
foreach (XmlNode node in nodes)
{
// 获取节点数据,并添加到DataGridView的行中
string name = node.SelectSingleNode("name").InnerText;
string age = node.SelectSingleNode("age").InnerText;
dataGridView1.Rows.Add(name, age);
}
}
private void btnSave_Click(object sender, EventArgs e)
{
// 创建XML文档对象
XmlDocument xmlDoc = new XmlDocument();
// 创建根节点
XmlElement root = xmlDoc.CreateElement("root");
xmlDoc.AppendChild(root);
// 遍历DataGridView中的行
foreach (DataGridViewRow row in dataGridView1.Rows)
{
// 创建item节点
XmlElement item = xmlDoc.CreateElement("item");
// 创建name属性
XmlAttribute nameAttr = xmlDoc.CreateAttribute("name");
nameAttr.Value = row.Cells[0].Value.ToString();
item.Attributes.Append(nameAttr);
// 创建age属性
XmlAttribute ageAttr = xmlDoc.CreateAttribute("age");
ageAttr.Value = row.Cells[1].Value.ToString();
item.Attributes.Append(ageAttr);
// 添加item节点到根节点
root.AppendChild(item);
}
// 保存XML文件
xmlDoc.Save("data.xml");
// 重新加载XML文件,更新DataGridView数据
Form1_Load(null, null);
}
这样,通过以上步骤,就可以在WinForm应用程序中通过DataGridView操作读写XML文件了。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)