public cmcEditor() { InitializeComponent(); this.DataContext = null; string s = File.ReadAllText(util.taxonomiesPath); vm = utilities.GetTaxonomyMasterFromXml(); CreateFilteredTaxonomy(); SetCvUserTaxonomyGroupings(); this.DataContext = vm; //Uncomment once data entry views are complete. Code will need to be edited to accommodate new viewmodel //Application.Current.MainWindow.Closing += CheckForEdits; }
public static vmCmc DeserializeXmlCmc(string s) { vmCmc tempVm = new vmCmc(); XmlRootAttribute root = new XmlRootAttribute(); root.ElementName = "cmc_taxonomies"; root.IsNullable = true; var serializer = new XmlSerializer(typeof(vmCmc), root); using (var reader = new StringReader(s)) { tempVm = (vmCmc)serializer.Deserialize(reader); } return(tempVm); }
public static vmCmc GetTaxonomyMasterFromXml() { utilities util = utilities.GetInstance(); vmCmc vm = new vmCmc(); XmlDocument doc = new XmlDocument(); doc.Load(util.taxonomiesPath); List <XmlNodeList> nl = new List <XmlNodeList>(); nl.Add(doc.SelectNodes("/cmc_taxonomies/Measure/Measure")); nl.Add(doc.SelectNodes("/cmc_taxonomies/Source/Source")); foreach (XmlNodeList nlChild in nl) { foreach (XmlNode node in nlChild) { mTaxonomy t = new mTaxonomy(); t.action = node["Action"].InnerText; t.taxonomy = node["Taxonomy"].InnerText; t.quantity = node["Quantity"].InnerText; XmlNodeList nlReq = node.SelectNodes("Required_Parameter"); foreach (XmlNode reqNode in nlReq) { mRequiredParams param = new mRequiredParams(); param.parameter = reqNode.InnerText; t.requiredParams.Add(param); } XmlNodeList nlOpt = node.SelectNodes("Optional_Parameter"); foreach (XmlNode optNode in nlOpt) { mOptionalParams param = new mOptionalParams(); param.parameter = optNode.InnerText; t.optionalParams.Add(param); } vm.masterTaxonomy.Add(t); } } return(vm); }