feat: add icon, improve demo.
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
using System.Threading.Tasks;
|
||||
using System;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Input;
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using CommunityToolkit.Mvvm.Input;
|
||||
@@ -13,6 +15,22 @@ public class MessageBoxDemoViewModel: ObservableObject
|
||||
public ICommand YesNoCommand { get; set; }
|
||||
public ICommand YesNoCancelCommand { get; set; }
|
||||
public ICommand OkCancelCommand { get; set; }
|
||||
|
||||
public ObservableCollection<MessageBoxIcon> Icons { get; set; }
|
||||
|
||||
private MessageBoxIcon _selectedIcon;
|
||||
public MessageBoxIcon SelectedIcon
|
||||
{
|
||||
get => _selectedIcon;
|
||||
set => SetProperty(ref _selectedIcon, value);
|
||||
}
|
||||
|
||||
private MessageBoxResult _result;
|
||||
public MessageBoxResult Result
|
||||
{
|
||||
get => _result;
|
||||
set => SetProperty(ref _result, value);
|
||||
}
|
||||
|
||||
public MessageBoxDemoViewModel()
|
||||
{
|
||||
@@ -21,30 +39,33 @@ public class MessageBoxDemoViewModel: ObservableObject
|
||||
YesNoCommand = new AsyncRelayCommand(OnYesNoAsync);
|
||||
YesNoCancelCommand = new AsyncRelayCommand(OnYesNoCancelAsync);
|
||||
OkCancelCommand = new AsyncRelayCommand(OnOkCancelAsync);
|
||||
Icons = new ObservableCollection<MessageBoxIcon>(
|
||||
Enum.GetValues<MessageBoxIcon>());
|
||||
SelectedIcon = MessageBoxIcon.None;
|
||||
}
|
||||
|
||||
private async Task OnDefaultMessageAsync()
|
||||
{
|
||||
var result = await MessageBox.ShowAsync("Hello Message Box");
|
||||
Result = await MessageBox.ShowAsync("Hello Message Box", icon: SelectedIcon);
|
||||
}
|
||||
|
||||
private async Task OnOkAsync()
|
||||
{
|
||||
var result = await MessageBox.ShowAsync("Hello Message Box", "Hello", MessageBoxButton.OK);
|
||||
Result = await MessageBox.ShowAsync("Hello Message Box", "Hello", icon: SelectedIcon, button:MessageBoxButton.OK);
|
||||
}
|
||||
|
||||
private async Task OnYesNoAsync()
|
||||
{
|
||||
var result = await MessageBox.ShowAsync("Hello Message Box", "Hello", MessageBoxButton.YesNo);
|
||||
Result = await MessageBox.ShowAsync("Hello Message Box", "Hello", icon: SelectedIcon, button: MessageBoxButton.YesNo);
|
||||
}
|
||||
|
||||
private async Task OnYesNoCancelAsync()
|
||||
{
|
||||
var result = await MessageBox.ShowAsync("Hello Message Box", "Hello", MessageBoxButton.YesNoCancel);
|
||||
Result = await MessageBox.ShowAsync("Hello Message Box", "Hello", icon: SelectedIcon, button: MessageBoxButton.YesNoCancel);
|
||||
}
|
||||
|
||||
private async Task OnOkCancelAsync()
|
||||
{
|
||||
var result = await MessageBox.ShowAsync("Hello Message Box", "Hello", MessageBoxButton.OKCancel);
|
||||
Result = await MessageBox.ShowAsync("Hello Message Box", "Hello", icon: SelectedIcon, button:MessageBoxButton.OKCancel);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user