public void RestoreWindowPosition(WindowPosition position) { this.Left = position.Origin.X; this.Top = position.Origin.Y; this.Width = position.Size.Width; this.Height = position.Size.Height; IsMaximised = position.Maximised; }
public override object ConvertFrom(ITypeDescriptorContext context, System.Globalization.CultureInfo culture, object value) { if (value is string) { string[] parts = ((string)value).Split(new char[] { ':' }); if(parts.Length != 5) { throw new ArgumentException("Can't parse WindowPosition."); } WindowPosition pos = new WindowPosition(); pos.Origin.X = Convert.ToInt32(parts[0]); pos.Origin.Y = Convert.ToInt32(parts[1]); pos.Size.Width = Convert.ToInt32(parts[2]); pos.Size.Height = Convert.ToInt32(parts[3]); pos.Maximised = Convert.ToBoolean(parts[4]); return pos; } return base.ConvertFrom(context, culture, value); }