Beispiel #1
0
        /// <summary>
        /// Create from XML structure in memory
        /// </summary>
        /// <param name="document">XML document to import data from</param>
        /// <param name="language">Language code to search for in document</param>
        /// <param name="initializationFunction">Lambda for initialization</param>
        public XmlMenu(XDocument document, string language, XmlMenuInitialization initializationFunction)
        {
            if (initializationFunction != null)
            {
                initializationFunction(this);
            }

            XElement root;

            try
            {
                root = document.Root.Elements().Where(e => e.Attribute("lang").Value == language || e.Attribute("default").Value == "yes").First();
            }
            catch (InvalidOperationException e)
            {
                throw new InvalidMenuFromXMLException("Selected language not in XML.", e);
            }

            Language = root.Attribute("lang").Value;

            RootItem = (PxMenuItem)parseXml(root.Elements().First());

            RootItem.Sort();
        }
Beispiel #2
0
 public void SortFiles()
 {
     SuppressFileTreeRefresh = true;
     RootItem?.Sort(FileComparer.Compare);
     SuppressFileTreeRefresh = false;
 }