Browse Source

fix: PrintVisualTree using StringBuilderCache

pull/8460/head
Giuseppe Lippolis 4 years ago
parent
commit
3fb4e92643
  1. 1
      src/Avalonia.Base/Avalonia.Base.csproj
  2. 5
      src/Avalonia.Diagnostics/Diagnostics/VisualTreeDebug.cs

1
src/Avalonia.Base/Avalonia.Base.csproj

@ -37,6 +37,7 @@
<InternalsVisibleTo Include="Avalonia.Win32, PublicKey=$(AvaloniaPublicKey)" />
<InternalsVisibleTo Include="Avalonia.Web.Blazor, PublicKey=$(AvaloniaPublicKey)" />
<InternalsVisibleTo Include="Avalonia.Dialogs, PublicKey=$(AvaloniaPublicKey)" />
<InternalsVisibleTo Include="Avalonia.Diagnostics, PublicKey=$(AvaloniaPublicKey)"/>
<InternalsVisibleTo Include="DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7" />
</ItemGroup>

5
src/Avalonia.Diagnostics/Diagnostics/VisualTreeDebug.cs

@ -2,6 +2,7 @@ using System;
using System.Text;
using Avalonia.Controls;
using Avalonia.Data;
using Avalonia.Utilities;
using Avalonia.VisualTree;
namespace Avalonia.Diagnostics
@ -10,9 +11,9 @@ namespace Avalonia.Diagnostics
{
public static string PrintVisualTree(IVisual visual)
{
var result = new StringBuilder();
var result = StringBuilderCache.Acquire();
PrintVisualTree(visual, result, 0);
return result.ToString();
return StringBuilderCache.GetStringAndRelease(result);
}
private static void PrintVisualTree(IVisual visual, StringBuilder builder, int indent)

Loading…
Cancel
Save