Files
Ursa.Avalonia/demo/Ursa.Demo/Pages/ToastDemo.axaml.cs
2025-06-04 17:12:54 +08:00

30 lines
796 B
C#

using Avalonia;
using Avalonia.Controls;
using Ursa.Controls;
using Ursa.Demo.ViewModels;
namespace Ursa.Demo.Pages;
public partial class ToastDemo : UserControl
{
private ToastDemoViewModel? _viewModel;
public ToastDemo()
{
InitializeComponent();
}
protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
{
base.OnAttachedToVisualTree(e);
if (DataContext is not ToastDemoViewModel vm) return;
_viewModel = vm;
_viewModel.ToastManager = new WindowToastManager(TopLevel.GetTopLevel(this)) { MaxItems = 3 };
}
protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
{
base.OnDetachedFromVisualTree(e);
_viewModel?.ToastManager?.Uninstall();
}
}