feat: implement buttons in different conditions.

This commit is contained in:
rabbitism
2024-01-11 21:03:37 +08:00
parent 66894aa569
commit 5eeebb020f
5 changed files with 156 additions and 18 deletions

View File

@@ -31,4 +31,32 @@ public static class MessageBox
return MessageBoxResult.None;
}
}
public static async Task<MessageBoxResult> ShowAsync(string message, string title, MessageBoxButton button)
{
var messageWindow = new MessageBoxWindow(button)
{
Content = message,
Title = title
};
var lifetime = Application.Current?.ApplicationLifetime;
if (lifetime is IClassicDesktopStyleApplicationLifetime classLifetime)
{
var main = classLifetime.MainWindow;
if (main is null)
{
messageWindow.Show();
return MessageBoxResult.None;
}
else
{
var result = await messageWindow.ShowDialog<MessageBoxResult>(main);
return result;
}
}
else
{
return MessageBoxResult.None;
}
}
}