将DataGridView中的XML数据绑定到DataSet中,通过修改DataSet中的数据来实现单元格编辑。
具体
DataSet ds = new DataSet();
ds.ReadXml("yourXMLFilePath.xml");
yourDataGridView.DataSource = ds.Tables[0];
private void yourDataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
yourBindingSource.EndEdit();
yourDataSet.AcceptChanges();
}
yourDataSet.WriteXml("yourXMLFilePath.xml");
注意事项:
DataSet的Schema和XML文件的Schema需要匹配,否则会抛出异常。
如果XML文件中有命名空间,需要在读取XML文件时指定命名空间。
如果XML文件中有嵌套节点,需要在读取XML文件时指定关系。
完整代码:
DataSet ds = new DataSet();
ds.ReadXml("yourXMLFilePath.xml", XmlReadMode.ReadSchema);
yourDataGridView.DataSource = ds.Tables[0];
private void yourDataGridView_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
yourBindingSource.EndEdit();
yourDataSet.AcceptChanges();
}
yourDataSet.WriteXml("yourXMLFilePath.xml", XmlWriteMode.WriteSchema);