43 lines
1.1 KiB
C#
43 lines
1.1 KiB
C#
|
|
using Prism.Dialogs;
|
|||
|
|
using Prism.Mvvm;
|
|||
|
|
using Prism.Commands;
|
|||
|
|
using System;
|
|||
|
|
|
|||
|
|
namespace YY.Admin.ViewModels.Dialogs
|
|||
|
|
{
|
|||
|
|
public class AlertDialogViewModel : BindableBase, IDialogAware
|
|||
|
|
{
|
|||
|
|
private string _message;
|
|||
|
|
public string Message
|
|||
|
|
{
|
|||
|
|
get => _message;
|
|||
|
|
set => SetProperty(ref _message, value);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public DelegateCommand CloseCommand { get; }
|
|||
|
|
|
|||
|
|
public AlertDialogViewModel()
|
|||
|
|
{
|
|||
|
|
CloseCommand = new DelegateCommand(() =>
|
|||
|
|
{
|
|||
|
|
// 调用 RequestClose 属性触发关闭
|
|||
|
|
RequestClose.Invoke(new DialogResult(ButtonResult.OK));
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public bool CanCloseDialog() => true;
|
|||
|
|
|
|||
|
|
public void OnDialogOpened(IDialogParameters parameters)
|
|||
|
|
{
|
|||
|
|
Message = parameters.GetValue<string>("message");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public void OnDialogClosed() { }
|
|||
|
|
|
|||
|
|
public string Title => "提示";
|
|||
|
|
|
|||
|
|
// 这里实现的是属性,不是 event
|
|||
|
|
public DialogCloseListener RequestClose { get; private set; }
|
|||
|
|
}
|
|||
|
|
}
|