Any ideas? Here's the code I use for adding the category to the XML file
private static bool AddNewNode(ref string category, ref string tag, ref string name)
{
try
{
XmlDocument xml = new XmlDocument();
xml.Load(name);
XmlElement newCat = xml.CreateElement("Category");
//add language value
XmlElement language = xml.CreateElement("Language");
XmlText catText = xml.CreateTextNode(category);
language.AppendChild(catText);
newCat.AppendChild(language);
xml.DocumentElement.AppendChild(newCat);
//add tag value
XmlElement tagValue = xml.CreateElement("Tag");
XmlText catTag = xml.CreateTextNode(tag);
tagValue.AppendChild(catTag);
newCat.AppendChild(tagValue);
xml.DocumentElement.AppendChild(newCat);
//insert after last node
xml.DocumentElement.InsertAfter(newCat, xml.DocumentElement.LastChild);
//save the document
xml.Save(name);
return true;
}
catch (Exception ex)
{
_returnMessage = ex.Message;
return false;
}
}
Here's the code I use for populating my TreeView
public static void LoadCategoriesIntoTreeView(ref string file, TreeView tv)
{
string name = AppPath + file;
DataSet languages = new DataSet();
if (!(DoesFileExist(ref name)))
{
tv.Nodes.Add("No categories available");
}
else
{
languages.ReadXml(file);
XmlDataDocument doc = new XmlDataDocument(languages);
string query = "/Categories/Category";
string display = "";
foreach (XmlNode node in doc.SelectNodes(query))
{
display = node.ChildNodes[0].InnerText.ToString();
tv.Nodes.Add(display);
}
}
}
Then in my AddCategory form I do this
private void cmdAdd_Click(object sender, EventArgs e)
{
string file = "Categories.xml";
string name = cboCategories.Text;
string tag = cboCategories.SelectedValue.ToString();
if (!(CategoriesManager.AddNewCategory(ref name, ref tag, ref file)))
{
MessageBox.Show(CategoriesManager.ReturnMessage);
}
else
{
Form1 frm = new Form1();
frm.tvLanguages.Nodes.Clear();
CategoriesManager.LoadCategoriesIntoTreeView(ref file, frm.tvLanguages);
this.Hide();
}
}
But it's not updating the TreeView. Ill post when I come up with a solution

New Topic/Question
Reply



MultiQuote








|