ich eine XML-Datei wie folgt aussehen:eine XML-Datei im Hinblick auf Datagrid laden und speichern sie wieder nach dem Update
DataGridViewRow row;
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(txtXmlAdd.Text);
XmlElement elm = xmlDoc.DocumentElement;
XmlNodeList nodeList = elm.ChildNodes;
foreach (XmlNode node in nodeList)
{
row = (DataGridViewRow)dgvXML.Rows[0].Clone();
row.Cells[0].Value = node.Name ;
row.Cells[1].Value = node.InnerText;
dgvXML.Rows.Add(row);
}
Jetzt:
<xml version="1.0" encoding="UTF-8">
<configes>
<Username>Administrator</Username>
<Password>123456</Password>
<Domain>sample</Domain>
<Url>http://sample/Organization.svc</Url>
</configes>
ich es in einem Datagridview durch so etwas wie dieses geladen Ich möchte einige Attribute ändern (Wert bearbeiten oder neues Attribut hinzufügen) und sie erneut in derselben Datei speichern. Ich versuche, diese aber es funktioniert nicht:
DataTable dT = GetDataTableFromDGV(dgvXML);
DataSet dS = new DataSet();
dS.DataSetName = "configes";
dS.Tables.Add(dT);
dS.WriteXml(string path);
wenn GetDataTableFromDGV so etwas wie diese:
var dt = new DataTable();
dt.TableName="";
string firstCol = "";
string secCol = "";
object[] cellValues = new object[1];
foreach (DataGridViewRow row in dgv.Rows)
{
secCol = row.Cells[1].Value.ToString();
firstCol = row.Cells[0].Value.ToString();
dt.Columns.Add(firstCol);
cellValues[0] = row.Cells[1].Value;
dt.Rows.Add(cellValues);
}
return dt;
I posted differents antworten, dass Ihr Problem lösen, können Sie Ihre XML-Datei als Datentabelle :) verwenden, meine Antworten hier: http://stackoverflow.com/questions/38261881/editing-xml-on- Live-in-c-löschen-Nodes-das-enthalten-spezifischen-Wert/38262575 # 38262575 und hier http://StackOverflow.com/Questions/38180836/How-Do-I-Read-XML-as-an-array -wie-json-decode-tut-aber-in-c/38181110 # 38181110 – Furtiro
Wie ich in meiner Frage sagte, konnte ich XML-Datei ohne jedes Problem laden. Ich möchte es nur in der gleichen Form speichern, nachdem ich DGV aktualisiert habe. – Farhad