2010-10-20 37 views
1

不想錯過sacha太多,有沒有人知道什麼Cinch V2從ViewModel命令關閉視圖的方式?Cinch版本的ViewModel命令關閉一個視圖

此前,我在ViewModel基礎中使用了RelayCommand來接受Escape鍵綁定命令操作,並在後面的View代碼中連接了一個RequestClose事件來執行此操作。

回答

1

在execute方法中使用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; 
    } 
}