Browse Source

Update documentation and add missing trimming attribute

pull/9577/head
Max Katz 4 years ago
parent
commit
60159ffb59
  1. 11
      src/Markup/Avalonia.Markup.Xaml/Styling/MergeResourceInclude.cs
  2. 4
      src/Markup/Avalonia.Markup.Xaml/Styling/ResourceInclude.cs
  3. 4
      src/Markup/Avalonia.Markup.Xaml/Styling/StyleInclude.cs

11
src/Markup/Avalonia.Markup.Xaml/Styling/MergeResourceInclude.cs

@ -1,8 +1,17 @@
using System;
using System.Diagnostics.CodeAnalysis;
using Avalonia.Controls;
namespace Avalonia.Markup.Xaml.Styling;
/// <summary>
/// Loads a resource dictionary from a specified URL.
/// </summary>
/// <remarks>
/// If used from the XAML code, it is merged into the parent dictionary in the compile time.
/// When used in runtime, this type behaves like <see cref="ResourceInclude"/>.
/// </remarks>
[RequiresUnreferencedCode(TrimmingMessages.StyleResourceIncludeRequiresUnreferenceCodeMessage)]
public class MergeResourceInclude : IResourceProvider
{
private readonly IServiceProvider _serviceProvider;
@ -31,7 +40,7 @@ public class MergeResourceInclude : IResourceProvider
{
_isLoading = true;
var source = Source ?? throw new InvalidOperationException("MergeResourceInclude.Source must be set.");
_loaded = (IResourceDictionary)AvaloniaXamlLoader.Load(source, _baseUri);
_loaded = (IResourceDictionary)AvaloniaXamlLoader.Load(_serviceProvider, source, _baseUri);
_isLoading = false;
}

4
src/Markup/Avalonia.Markup.Xaml/Styling/ResourceInclude.cs

@ -9,6 +9,10 @@ namespace Avalonia.Markup.Xaml.Styling
/// <summary>
/// Loads a resource dictionary from a specified URL.
/// </summary>
/// <remarks>
/// If used from the XAML code, it is replaced with direct resource dictionary reference.
/// When used in runtime, this type might be unsafe with trimming and AOT.
/// </remarks>
[RequiresUnreferencedCode(TrimmingMessages.StyleResourceIncludeRequiresUnreferenceCodeMessage)]
public class ResourceInclude : IResourceProvider
{

4
src/Markup/Avalonia.Markup.Xaml/Styling/StyleInclude.cs

@ -11,6 +11,10 @@ namespace Avalonia.Markup.Xaml.Styling
/// <summary>
/// Includes a style from a URL.
/// </summary>
/// <remarks>
/// If used from the XAML code, it is replaced with direct style reference.
/// When used in runtime, this type might be unsafe with trimming and AOT.
/// </remarks>
[RequiresUnreferencedCode(TrimmingMessages.StyleResourceIncludeRequiresUnreferenceCodeMessage)]
public class StyleInclude : IStyle, IResourceProvider
{

Loading…
Cancel
Save