1

不想给 sacha 带来太多麻烦,有谁知道 Cinch V2 从 ViewModel 命令关闭视图的方式是什么?

以前我在 ViewModel 基础中使用了 RelayCommand 来接受 Escape 键绑定命令操作,并在后面的 View 代码中连接了一个 RequestClose 事件来执行此操作。

4

1 回答 1

1

在执行方法中使用 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;
  }
}
于 2011-01-15T15:37:44.117 回答