У меня есть следующий XML-файл:
<WindowEntries>
<WindowEntry>
<Name>maduranga</Name>
<View>TRN_UNIT</View>
<LU>TrnUnit</LU>
<DefaultWindowText />
<Flags>0</Flags>
</WindowEntry>
<WindowEntry>
<Name>tbwBrandOverView</Name>
<View>TRN_BRAND</View>
<LU>TrnBrand</LU>
<DefaultWindowText />
<Flags>0</Flags>
</WindowEntry>
<WindowEntries>
Я разработал TreeView для этого xml.После того, как пользователь выберет один WindowEntry из дерева для редактирования, и после того, как пользователь выберет одно значение в записи, загрузите несколько текстовых полей для редактирования.После того, как пользователь закончит редактирование, я сохраняю его.После сохранения XML-файл выглядит следующим образом:
<WindowEntries>
<WindowEntry>
<Name>maduranga</Name>
<View>maduranga</View>
<LU>maduranga</LU>
<Flags>maduranga</Flags>
</WindowEntry>
<WindowEntry>
<Name>tbwBrandOverView</Name>
<View>TRN_BRAND</View>
<LU>TrnBrand</LU>
<Flags>0</Flags>
</WindowEntry>
**<WindowEntry>
<Name>newvalue</Name>
<View>newvalue</View>
<LU>newvalue</LU>
<Flags>newvalue</Flags>
</WindowEntry>**
<WindowEntries>
, но я хочу перезаписать значение "madurang" значением "newvalue".Это код, который я использую для этого редактирования.
XmlTextReader reader = new XmlTextReader("component.xml");
XmlDocument doc = new XmlDocument();
doc.Load(reader);
reader.Close();
XmlNode currNode;
XmlDocumentFragment docFrag = doc.CreateDocumentFragment();
try
{
string path3 = treeView1.SelectedNode.FullPath.ToString();
docFrag.InnerXml = "<WindowEntry>" +
"<Name>" + textBox7.Text + "</Name>" +
"<LU>" + textBox8.Text + "</LU>" +
"<View>" + textBox9.Text + "</View>" +
"<Flags>" + textBox10.Text + "</Flags>" +
"<OverrideDefaultHome>" + textBox11.Text + "</OverrideDefaultHome>" +
"<AssociatedHomepage>" + textBox12.Text + "</AssociatedHomepage>" +
"</WindowEntry>";
currNode = doc.SelectSingleNode("Component/WindowEntries");
currNode.AppendChild(docFrag);
doc.Save("component.xml");
}