public RegisterItem(XElement reg, RegisterGroupItem parent, RegViewModel owner) { Element = reg; ParentItem = Parent = parent; Owner = owner; Name = reg.Attribute("name").Value; Description = reg.Attribute("description").Value; ItemPath = Path.Combine(parent.ItemPath, Name); Icon = EmbSysRegView.Properties.Resources.unselected_register; try { var val = (reg.Attribute("resetvalue") != null) ? reg.Attribute("resetvalue").Value.Trim() : ""; if (val.IndexOf('x') > 0) { val = val.Substring(val.IndexOf('x') + 1); } Reset = Convert.ToUInt32((val.Length > 0) ? val : "0x00", 16); Access = reg.Attribute("access").Value; val = reg.Attribute("address").Value.Trim(); if (val.IndexOf('x') > 0) { val = val.Substring(val.IndexOf('x') + 1); } Address = Convert.ToUInt32(val, 16); } catch (Exception ex) { Description = "PARSE ERROR: " + ex.Message; } }
public override List<BaseItem> LoadChildren() { var items = new List<BaseItem>(); Children = new List<RegisterGroupItem>(); foreach (var regGroup in Element.Descendants("registergroup")) { var item = new RegisterGroupItem(regGroup, this, Owner); Children.Add(item); items.Add(item); } return items; }
public override List <BaseItem> LoadChildren() { var items = new List <BaseItem>(); Children = new List <RegisterGroupItem>(); foreach (var regGroup in Element.Descendants("registergroup")) { var item = new RegisterGroupItem(regGroup, this, Owner); Children.Add(item); items.Add(item); } return(items); }
public RegisterItem(XElement reg, RegisterGroupItem parent, RegViewModel owner) { Element = reg; ParentItem = Parent = parent; Owner = owner; Name = reg.Attribute("name").Value; Description = reg.Element("description").Value; ItemPath = Path.Combine(parent.ItemPath, Name); Icon = EmbSysRegView.Properties.Resources.unselected_register; try { var val = (reg.Attribute("resetvalue") != null) ? reg.Attribute("resetvalue").Value.Trim() : ""; if (val.IndexOf('x') > 0) val = val.Substring(val.IndexOf('x') + 1); Reset = Convert.ToUInt32((val.Length > 0) ? val : "0x00", 16); Access = reg.Attribute("access").Value; val = reg.Attribute("address").Value.Trim(); if (val.IndexOf('x') > 0) val = val.Substring(val.IndexOf('x') + 1); Address = Convert.ToUInt32(val, 16); } catch (Exception ex) { Description = "PARSE ERROR: " + ex.Message; } }