48 lines
1.3 KiB
C#
48 lines
1.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace YY.Admin.ViewModels.Dialogs
|
|
{
|
|
public class ConfirmDialogViewModel : BindableBase, IDialogAware
|
|
{
|
|
public string Title => "确认";
|
|
|
|
private string _message;
|
|
public string Message
|
|
{
|
|
get => _message;
|
|
set => SetProperty(ref _message, value);
|
|
}
|
|
|
|
// 这是 Prism.Dialogs 版本的 RequestClose
|
|
public DialogCloseListener RequestClose { get; private set; }
|
|
|
|
public DelegateCommand YesCommand { get; }
|
|
public DelegateCommand NoCommand { get; }
|
|
|
|
public ConfirmDialogViewModel()
|
|
{
|
|
YesCommand = new DelegateCommand(() => CloseDialog(ButtonResult.Yes));
|
|
NoCommand = new DelegateCommand(() => CloseDialog(ButtonResult.No));
|
|
}
|
|
|
|
private void CloseDialog(ButtonResult result)
|
|
{
|
|
// 触发关闭
|
|
RequestClose.Invoke(new DialogResult(result));
|
|
}
|
|
|
|
public bool CanCloseDialog() => true;
|
|
|
|
public void OnDialogOpened(IDialogParameters parameters)
|
|
{
|
|
Message = parameters.GetValue<string>("message");
|
|
}
|
|
|
|
public void OnDialogClosed() { }
|
|
}
|
|
}
|