public void SetAssemblyLists(AssemblyListManager newAssemblyListManager)
 {
     var currentlyDisplayedList = manager.CurrentListName;
     manager = newAssemblyListManager;
     if (manager.CurrentListName != currentlyDisplayedList)
     {
         DisplayAssemblyList(manager.AssemblyLists[manager.CurrentListName]);
     }
 }
        public void ReadFromXml(XmlElement element)
        {
            if (element == null)
                return;

            var currentList = element.ReadAttribute("current");

            var assemblyListGroups = from assemblyList in element.SelectElements("AssemblyList")
                                     let name = assemblyList.ReadAttribute("name")
                                     from assemblyFile in assemblyList.SelectElements("AssemblyFile")
                                     group XmlUtil.ReadLeafElementValue(assemblyFile) by name;

            var assemblyLists = assemblyListGroups.ToDictionary(k => k.Key, v => (IList<string>)v.ToList());

            manager = new AssemblyListManager(assemblyLists, currentList);
        }