private static void SaveColumnDefinition(XmlWriter wr, OutlinerColumnDefinition columnDefinition) { wr.WriteStartElement("ColumnDefinition"); wr.WriteAttributeString("Name", columnDefinition.ColumnName); wr.WriteAttributeString("Type", ((int)columnDefinition.DataType).ToString()); wr.WriteAttributeString("Width", (columnDefinition.Width).ToString()); wr.WriteEndElement(); }
private static void ReadColumnDefinitions(OutlinerDocument document, XmlReader reader) { string order = reader.GetAttribute("Order"); if (order != null) { document.ColumnDefinitions.OrderOnInit = order; } document.ColumnDefinitions.Clear(); XmlReader subtree = reader.ReadSubtree(); while (subtree.ReadToFollowing("ColumnDefinition")) { string name = reader.GetAttribute("Name"); ColumnDataType type = (ColumnDataType)int.Parse(reader.GetAttribute("Type")); double width = 100; string width_str = reader.GetAttribute("Width"); try { width = double.Parse(width_str); } catch { if (width_str.Contains(".")) { width = double.Parse(reader.GetAttribute("Width").Replace(".", ",")); } else if (width_str.Contains(",")) { width = double.Parse(reader.GetAttribute("Width").Replace(",", ".")); } } if (name != null) { OutlinerColumnDefinition columnDefinition = new OutlinerColumnDefinition(name, type); columnDefinition.Width = width; document.ColumnDefinitions.Add(columnDefinition); } } }