diff --git a/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/AvaloniaXamlIlLanguageParseIntrinsics.cs b/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/AvaloniaXamlIlLanguageParseIntrinsics.cs index ce8937027e..93a4b3146c 100644 --- a/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/AvaloniaXamlIlLanguageParseIntrinsics.cs +++ b/src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/AvaloniaXamlIlLanguageParseIntrinsics.cs @@ -172,6 +172,7 @@ namespace Avalonia.Markup.Xaml.XamlIl.CompilerExtensions if (type.Equals(types.Color)) { + text = text.Trim(); if (!Color.TryParse(text, out Color color)) { return ReturnOnParseError($"Unable to parse \"{text}\" as a color", out result); diff --git a/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/AvaloniaIntrinsicsTests.cs b/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/AvaloniaIntrinsicsTests.cs index d873c7f9ff..592dd42698 100644 --- a/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/AvaloniaIntrinsicsTests.cs +++ b/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/AvaloniaIntrinsicsTests.cs @@ -108,6 +108,24 @@ public class AvaloniaIntrinsicsTests : XamlTestBase Assert.Contains(contains, runtimeXamlDiagnostic.Title, StringComparison.OrdinalIgnoreCase); } } + + /// + /// GitHub Issue #15320 + /// + [Fact] + public void Should_Parse_Formatted_Color_Tag() + { + var target = AvaloniaRuntimeXamlLoader + .Parse($""" + + + White + + + """); + Assert.NotNull(target); + } } public class TestIntrinsicsControl : Control