public override string ConvertToInvariantString(object value) { if (!(value is ColumnDefinitionCollection cdc)) { throw new NotSupportedException(); } var converter = new GridLengthTypeConverter(); return(string.Join(", ", cdc.Select(cd => converter.ConvertToInvariantString(cd.Width)))); }
public override string ConvertToInvariantString(object value) { if (!(value is RowDefinitionCollection rdc)) { throw new NotSupportedException(); } var converter = new GridLengthTypeConverter(); return(string.Join(", ", rdc.Select(rd => converter.ConvertToInvariantString(rd.Height)))); }
public override object ConvertFromInvariantString(string value) { if (value != null) { var lengths = value.Split(','); var coldefs = new ColumnDefinitionCollection(); var converter = new GridLengthTypeConverter(); foreach (var length in lengths) { coldefs.Add(new ColumnDefinition { Width = (GridLength)converter.ConvertFromInvariantString(length) }); } return(coldefs); } throw new InvalidOperationException(string.Format("Cannot convert \"{0}\" into {1}", value, typeof(ColumnDefinitionCollection))); }