DataTable事件与XML文件关系
一个C/S结构的程序,XML文档作为DataGridView的数据源,已设置DataGridView的ReadOnly为false,即DataGridView可以进行更新操作,想要实现更新DataGridView中的内容时,更新XML文档,以前只做过更新数据库的,请大家帮忙了!
可以订阅数据发生改变的事件,并在数据改变后写到Xml文件中(你自己要考虑效率问题以及什么时候写)。
- C# code
- private void Form1_Load(object sender, EventArgs e) { string xml=@"<?xml version=""1.0"" standalone=""yes"" ?> <Department> <Student> <Name>hello</Name> <Age>123</Age> </Student> <Student> <Name>world</Name> <Age>456</Age> </Student> </Department>"; DataSet dataset = new DataSet(); dataset.ReadXml(new System.IO.StringReader(xml)); DataTable table = dataset.Tables[0]; this.dataGridView1.DataSource = table; table.RowChanged += new DataRowChangeEventHandler(OnTableChanged); //<--- table.RowDeleted += new DataRowChangeEventHandler(OnTableChanged); //<--- } void OnTableChanged(object sender, DataRowChangeEventArgs e) { System.Diagnostics.Trace.TraceInformation("DataTable changed - " + e.Action); DataTable table = sender as DataTable; if (table != null) { table.DataSet.WriteXml("c:\\temp\\temp.xml"); //<--- } }