diff --git a/src/Controls/src/Core/ColumnDefinitionCollectionTypeConverter.cs b/src/Controls/src/Core/ColumnDefinitionCollectionTypeConverter.cs index c1743ea40671..dca97e998685 100644 --- a/src/Controls/src/Core/ColumnDefinitionCollectionTypeConverter.cs +++ b/src/Controls/src/Core/ColumnDefinitionCollectionTypeConverter.cs @@ -27,7 +27,10 @@ public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo c { var lengths = strValue.Split(','); var converter = new GridLengthTypeConverter(); - return new ColumnDefinitionCollection(lengths.Select(length => new ColumnDefinition {Width = (GridLength)converter.ConvertFromInvariantString(length) }).ToArray()); + var definitions = new ColumnDefinition[lengths.Length]; + for (var i = 0; i < lengths.Length; i++) + definitions[i] = new ColumnDefinition { Width = (GridLength)converter.ConvertFromInvariantString(lengths[i]) }; + return new ColumnDefinitionCollection(definitions); } throw new InvalidOperationException(string.Format("Cannot convert \"{0}\" into {1}", strValue, typeof(ColumnDefinitionCollection))); diff --git a/src/Controls/src/Core/RowDefinitionCollectionTypeConverter.cs b/src/Controls/src/Core/RowDefinitionCollectionTypeConverter.cs index 5b5f595a7d82..c1ef9c225bed 100644 --- a/src/Controls/src/Core/RowDefinitionCollectionTypeConverter.cs +++ b/src/Controls/src/Core/RowDefinitionCollectionTypeConverter.cs @@ -27,7 +27,10 @@ public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo c { var lengths = strValue.Split(','); var converter = new GridLengthTypeConverter(); - return new RowDefinitionCollection(lengths.Select(length => new RowDefinition {Height = (GridLength)converter.ConvertFromInvariantString(length) }).ToArray()); + var definitions = new RowDefinition[lengths.Length]; + for (var i = 0; i < lengths.Length; i++) + definitions[i] = new RowDefinition { Height = (GridLength)converter.ConvertFromInvariantString(lengths[i]) }; + return new RowDefinitionCollection(definitions); } throw new InvalidOperationException(string.Format("Cannot convert \"{0}\" into {1}", strValue, typeof(RowDefinitionCollection))); diff --git a/src/Controls/src/SourceGen/Controls.SourceGen.csproj b/src/Controls/src/SourceGen/Controls.SourceGen.csproj index 29222981cd16..771dd4cec264 100644 --- a/src/Controls/src/SourceGen/Controls.SourceGen.csproj +++ b/src/Controls/src/SourceGen/Controls.SourceGen.csproj @@ -30,7 +30,7 @@ - +