Jag skulle vara tacksam om jag fick lite hjälp med att utöka nedanståend Jag försöker så här: Då jag inte har kunnat lösa mitt problem, så har jag backat tiden, och löst det genomSkriva och läsa XML
c#-kod så att det blev en node mer.
<code>
public bool setSetting(string settingNode, string newValue)
{
xmldoc.Load(xmlFile);
XmlNodeList list = xmldoc.SelectNodes("Settings");
try
{
foreach (XmlNode searchNode in list)
{
XmlNode node = searchNode.SelectSingleNode(settingNode.Replace(" ", "_"));
if (node == null)
{
XmlElement element = xmldoc.CreateElement(settingNode.Replace(" ", "_"));
xmldoc.DocumentElement.AppendChild(element);
searchNode.SelectSingleNode(settingNode.Replace(" ", "_")).InnerText = newValue;
}
else
searchNode.SelectSingleNode(settingNode.Replace(" ", "_")).InnerText = newValue;
}
}
catch (Exception)
{ return false; }
xmldoc.Save(xmlFile);
return true;
}
//*************
public string getSetting(string settingNode)
{
xmldoc.Load(xmlFile);
XmlNodeList list = xmldoc.GetElementsByTagName("Settings");
try
{
foreach (XmlNode searchNode in list)
{
return searchNode.SelectSingleNode(settingNode.Replace(" ", "_")).InnerText;
}
}
catch (Exception)
{ }
return "";
}
</code>
Som det nu är, så får jag
<info>
<Zooma>110</Zooma>
<Font_titel>Tahoma</Font_titel>
<Font_Size>10</Font_Size>
</info>
..men jag skulle vilja ha
<info>
<Dokument>
<Zooma>110</Zooma>
<Font_titel>Tahoma</Font_titel>
<Font_Size>10</Font_Size>
</Dokument>
</info>
Där det står Dokument skulle alltså vara en extra parameter ung. som string settingNode.
Jag har försökt att fixa till det, men jag misslyckas hela tiden :-( Sv: Skriva och läsa XML
<code>
public bool setSetting(string groupNode,string settingNode, string newValue)
{
xmldoc.Load(xmlFile);
XmlNodeList list = xmldoc.SelectNodes("Settings");
try
{
foreach (XmlNode searchGroupNode in list)
{
XmlNode gNode = searchGroupNode.SelectSingleNode(groupNode.Replace(" ", "_"));
if (gNode == null)
{
XmlElement element = xmldoc.CreateElement(groupNode.Replace(" ", "_"));
xmldoc.DocumentElement.AppendChild(element);
}
//****
foreach (XmlNode searchNode in list)
{
XmlNode node = searchNode.SelectSingleNode(settingNode.Replace(" ", "_"));
if (node == null)
{
XmlElement element = xmldoc.CreateElement(settingNode.Replace(" ", "_"));
xmldoc.DocumentElement.AppendChild(element);
searchNode.SelectSingleNode(settingNode.Replace(" ", "_")).InnerText = newValue;
}
else
searchNode.SelectSingleNode(settingNode.Replace(" ", "_")).InnerText = newValue;
}
//****
}
}
catch (Exception)
{ return false; }
xmldoc.Save(xmlFile);
return true;
}
</code>
..men det är lite misslyckat resultatet blir
<info>
<Dokument />
<Zooma>110</Zooma>
<Vindrag>19</Vindrag>
</info>
.. dvs jag kan göra den nya grupen, men den stänger sig själv.'Tips fore tacksamt. Sv:Skriva och läsa XML
ini-fil. Jag har fått det att fungera väldigt bra.