读书人

DataGridView的数据源是XML文档,更新其

发布时间: 2012-07-22 19:31:16 作者: rapoo

DataGridView的数据源是XML文档,更新其内容时如何更新XML文档???急!!!
一个C/S结构的程序,XML文档作为DataGridView的数据源,已设置DataGridView的ReadOnly为false,即DataGridView可以进行更新操作,想要实现更新DataGridView中的内容时,更新XML文档,以前只做过更新数据库的,请大家帮忙了!

[解决办法]
参考DataSet数据源与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");                          //<---        }    }
[解决办法]
探讨
可以订阅数据发生改变的事件,并在数据改变后写到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>

读书人网 >C#

热点推荐