/// <inheritdoc />
        public override object ConvertFrom(
            ITypeDescriptorContext typeDescriptorContext,
            CultureInfo cultureInfo,
            object source)
        {
            if (source is string text)
            {
                var lengths           = GridLengthsParser.Parse(typeDescriptorContext, cultureInfo, text);
                var columnDefinitions = lengths.Select(gl => new System.Windows.Controls.ColumnDefinition {
                    Width = gl
                });
                return(new ColumnDefinitions(columnDefinitions));
            }

            return(base.ConvertFrom(typeDescriptorContext, cultureInfo, source));
        }
        /// <inheritdoc />
        public override object ConvertFrom(
            ITypeDescriptorContext typeDescriptorContext,
            CultureInfo cultureInfo,
            object source)
        {
            if (source is string text)
            {
                var lengths        = GridLengthsParser.Parse(typeDescriptorContext, cultureInfo, text);
                var rowDefinitions = lengths.Select(gl => new RowDefinition {
                    Height = gl
                });
                return(new RowDefinitions(rowDefinitions));
            }

            return(base.ConvertFrom(typeDescriptorContext, cultureInfo, source));
        }