add Avalonia Dialogs
This commit is contained in:
27
Pilz.UI.AvaloniaUI/Dialogs/AvaloniaDialogBase.axaml.cs
Normal file
27
Pilz.UI.AvaloniaUI/Dialogs/AvaloniaDialogBase.axaml.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
using Avalonia.Controls;
|
||||
|
||||
namespace Pilz.UI.AvaloniaUI.Dialogs;
|
||||
|
||||
public partial class AvaloniaDialogBase : Window
|
||||
{
|
||||
protected AvaloniaFlyoutBase? dialogPanel;
|
||||
|
||||
public AvaloniaFlyoutBase DialogPanel => dialogPanel ?? throw new NullReferenceException();
|
||||
|
||||
public AvaloniaDialogBase()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void SetContent(AvaloniaFlyoutBase content)
|
||||
{
|
||||
dialogPanel = content;
|
||||
dialogPanel.OnClose += DialogPanelOnOnClose;
|
||||
Content = content;
|
||||
}
|
||||
|
||||
private void DialogPanelOnOnClose(object? sender, EventArgs e)
|
||||
{
|
||||
Close(DialogPanel.Result);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user