不想给 sacha 带来太多麻烦,有谁知道 Cinch V2 从 ViewModel 命令关闭视图的方式是什么?
以前我在 ViewModel 基础中使用了 RelayCommand 来接受 Escape 键绑定命令操作,并在后面的 View 代码中连接了一个 RequestClose 事件来执行此操作。
在执行方法中使用 CloseActivePopUpCommand.Execute(true) 来关闭视图。
我在下面包含了一个简短的示例。
[ExportViewModel("PickOperatorViewModel")]
[PartCreationPolicy(CreationPolicy.NonShared)]
public class PickOperatorViewModel : ViewModelBase
{
[ImportingConstructor]
public PickOperatorViewModel()
{
PickOperaterCommand = new SimpleCommand<Object, Object>(CanExecutePickOperaterCommand, ExecutePickOperaterCommand);
}
public SimpleCommand<Object, Object> PickOperaterCommand { get; private set; }
private void ExecutePickOperaterCommand(Object args)
{
CloseActivePopUpCommand.Execute(true);
}
private bool CanExecutePickOperaterCommand(Object args)
{
return true;
}
}