命令与多个视图模型一起运行

时间:2012-06-29 07:16:52

标签: c# wpf mvvm

我正在通过MVVM模式设计WPF应用程序架构。现在我遇到以下情况:

class ParentViewModel : ViewModelBase<IParent>
{
    public ObservableCollection<ChildViewModel> Children { get; private set; }
}

class ChildViewModel : ViewModelBase<IChild>
{
    public ICommand ParentAndChildCommand { get; private set; }
}

class ParentAndChildCommand : ICommand
{
    public void Execute(object parameter)
    {
        // ParentViewModel.DoSomething(ChildViewModel);
    }

    public bool CanExecute(object parameter)
    {
        // return CanExecute(ParentViewModel, ChildViewModel);
    }
}

到目前为止,我能看到的唯一解决方案是在ParentViewModel类中处理ParentAndChildCommand的Executing和QueryCanExecute事件。但我相信对于这种情况有更好的解决方案。请告知如何设计这样的逻辑。提前谢谢。

1 个答案:

答案 0 :(得分:0)

使用ICommand组织工作更好地使用不同的MVVM框架

样品: http://mvvmlight.codeplex.com/