45 lines
1.1 KiB
C#
45 lines
1.1 KiB
C#
using Avalonia;
|
|
using Avalonia.Controls;
|
|
using CryptoPortfolio_Tracker.ViewModels;
|
|
using System;
|
|
using Avalonia.Controls.Notifications;
|
|
using Ursa.Controls;
|
|
|
|
namespace CryptoPortfolio_Tracker.Views;
|
|
|
|
public partial class MainView : NavigationPage
|
|
{
|
|
public static MainView Current { get; set; } = null!;
|
|
|
|
private WindowToastManager _toastManager = null!;
|
|
|
|
public MainView()
|
|
{
|
|
InitializeComponent();
|
|
Current = this;
|
|
}
|
|
|
|
protected override async void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
|
|
{
|
|
base.OnAttachedToVisualTree(e);
|
|
|
|
_toastManager = new WindowToastManager(TopLevel.GetTopLevel(this));
|
|
|
|
if (CurrentPage == null)
|
|
await PushAsync(new LoginView()
|
|
{
|
|
DataContext = new LoginViewModel()
|
|
});
|
|
}
|
|
|
|
public void ShowToast(string message, NotificationType type)
|
|
{
|
|
_toastManager.Show(
|
|
content: message,
|
|
showIcon: true,
|
|
showClose: true,
|
|
type: type,
|
|
expiration: TimeSpan.FromSeconds(3),
|
|
classes: ["Light"]);
|
|
}
|
|
} |