using CapMachine.Core; using Prism.Commands; using Prism.Services.Dialogs; using System.Windows; namespace CapMachine.Wpf.ViewModels { public class DialogEditProViewModel : DialogViewModel { public DialogEditProViewModel() { this.Title = "修改"; } private string name; /// /// 名称 /// public string Name { get { return name; } set { name = value; RaisePropertyChanged(); } } private int _ProRepeat; /// /// 程序的循环次数 /// public int ProRepeat { get { return _ProRepeat; } set { _ProRepeat = value; RaisePropertyChanged(); } } private DelegateCommand saveCmd; /// /// 保存命令 /// public DelegateCommand SaveCmd { set { saveCmd = value; } get { if (saveCmd == null) { saveCmd = new DelegateCommand(() => SaveCmdMethod()); } return saveCmd; } } /// /// 保存命令方法 /// /// private void SaveCmdMethod() { if (string.IsNullOrEmpty(Name)) { MessageBox.Show("请输入正确的名称!"); return; } DialogParameters pars = new DialogParameters { { "Name", Name }, { "ProRepeat", ProRepeat } }; RaiseRequestClose(new DialogResult(ButtonResult.OK, pars)); } private DelegateCommand cancelCmd; /// /// 保存命令 /// public DelegateCommand CancelCmd { set { cancelCmd = value; } get { if (cancelCmd == null) { cancelCmd = new DelegateCommand(() => CancelCmdMethod()); } return cancelCmd; } } /// /// 取消命令方法 /// /// private void CancelCmdMethod() { RaiseRequestClose(new DialogResult(ButtonResult.Cancel)); } /// /// 窗口打开时的传递的参数 /// /// public override void OnDialogOpened(IDialogParameters parameters) { Name = parameters.GetValue("Name"); ProRepeat= parameters.GetValue("ProRepeat"); } } }