this.dataGrid1 = new System.Windows.Forms.DataGrid();
this.dataGrid1.DataMember = "";
this.dataGrid1.Location = new System.Drawing.Point(36, 50);
this.dataGrid1.Name = "dataGrid1";
this.dataGrid1.Size = new System.Drawing.Size(464, 432);
this.dataGrid1.TabIndex = 0;
//
this.AutoScaleBaseSize = new System.Drawing.Size(35, 13);
this.ClientSize = new System.Drawing.Size(592, 573);
this.Controls.AddRange(new System.Windows.Forms.Control[] { this.dataGrid1 });
((System.ComponentModel.ISupportInitialize)(this.dataGrid1)).EndInit();
this.ResumeLayout(false);
XmlDataDocument xmlDatadoc = new XmlDataDocument();
xmlDatadoc.DataSet.ReadXml("abcd.xml");
DataSet ds = new DataSet("abc");
ds = xmlDatadoc.DataSet;
dataGrid1.DataSource = ds.Tables[0];
上面的代码读取XML文件并显示在DataGrid中。有人可以告诉我如何编辑DataGrid,以便可以编辑XML中的相应值吗?
答案 0 :(得分:0)
XML和Datagrid数据集没有相互关联,因此您需要通过从Dataset编写XML来手动完成。
答案 1 :(得分:0)
要将DataSet
的更改保存回XML文件,您只需执行
ds.Tables[0] = (DataTable)(dataGrid1.DataSource);
ds.WriteXml("your path here");
作为旁注,您的代码有点多余。当您创建XmlDataDocument
的实例时,您可以访问它的DataSet
属性,而无需在代码显示时创建新的DataSet
实例。如果您只想将XML文件读入DataSet
,则可以执行以下操作
DataSet ds = new DataSet("abc");
ds.ReadXml("abcd.xml");
dataGrid1.DataSource = ds.Tables[0];