|
|
|
@ -1,5 +1,6 @@ |
|
|
|
using System.ComponentModel; |
|
|
|
using Avalonia.Controls.Primitives; |
|
|
|
using Avalonia.Controls.Templates; |
|
|
|
using Avalonia.Metadata; |
|
|
|
using Avalonia.Styling; |
|
|
|
|
|
|
|
@ -10,8 +11,14 @@ namespace Avalonia.Controls |
|
|
|
/// <summary>
|
|
|
|
/// Defines the <see cref="Content"/> property
|
|
|
|
/// </summary>
|
|
|
|
public static readonly StyledProperty<object> ContentProperty = |
|
|
|
AvaloniaProperty.Register<Flyout, object>(nameof(Content)); |
|
|
|
public static readonly StyledProperty<object?> ContentProperty = |
|
|
|
AvaloniaProperty.Register<Flyout, object?>(nameof(Content)); |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Defines the <see cref="ContentTemplate"/> property.
|
|
|
|
/// </summary>
|
|
|
|
public static readonly StyledProperty<IDataTemplate?> ContentTemplateProperty = |
|
|
|
AvaloniaProperty.Register<Flyout, IDataTemplate?>(nameof(ContentTemplate)); |
|
|
|
|
|
|
|
private Classes? _classes; |
|
|
|
|
|
|
|
@ -39,17 +46,27 @@ namespace Avalonia.Controls |
|
|
|
/// Gets or sets the content to display in this flyout
|
|
|
|
/// </summary>
|
|
|
|
[Content] |
|
|
|
public object Content |
|
|
|
public object? Content |
|
|
|
{ |
|
|
|
get => GetValue(ContentProperty); |
|
|
|
set => SetValue(ContentProperty, value); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Gets or sets the data template used to display the content of the flyout.
|
|
|
|
/// </summary>
|
|
|
|
public IDataTemplate? ContentTemplate |
|
|
|
{ |
|
|
|
get => GetValue(ContentTemplateProperty); |
|
|
|
set => SetValue(ContentTemplateProperty, value); |
|
|
|
} |
|
|
|
|
|
|
|
protected override Control CreatePresenter() |
|
|
|
{ |
|
|
|
return new FlyoutPresenter |
|
|
|
{ |
|
|
|
[!ContentControl.ContentProperty] = this[!ContentProperty] |
|
|
|
[!ContentControl.ContentProperty] = this[!ContentProperty], |
|
|
|
[!ContentControl.ContentTemplateProperty] = this[!ContentTemplateProperty] |
|
|
|
}; |
|
|
|
} |
|
|
|
|
|
|
|
|