public string ToXml(TreeItemXmlWriterDelegate treeItemWriterDelegate) { MemoryStream ms = new MemoryStream(); XmlTextWriter xtw = new XmlTextWriter(ms, Encoding.UTF8); xtw.WriteStartDocument(true); xtw.WriteStartElement("TreeCollection"); ToXml(treeItemWriterDelegate); xtw.WriteEndElement(); xtw.WriteEndDocument(); xtw.Flush(); Stream stream = xtw.BaseStream; stream.Position = 0; StreamReader sr = new StreamReader(stream); string xml = sr.ReadToEnd(); sr.Close(); stream.Close(); xtw.Close(); return(xml); }
private void ToXml(string currentId, XmlTextWriter xtw, TreeItemXmlWriterDelegate treeItemWriterDelegate) { LightCollection <string> items; if (currentId == null) { items = _rootItems; } else { items = _globalCollection[currentId].Subitems.ItemsId; } for (int i = 0; i < items.Count; i++) { treeItemWriterDelegate(_globalCollection[items[i]], xtw); ToXml(items[i], xtw, treeItemWriterDelegate); } }
public string ToIndexXml() { TreeItemXmlWriterDelegate writerDelegate = new TreeItemXmlWriterDelegate(IndexXmlWriterDelegate); return(ToXml(writerDelegate)); }