我正在通过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事件。但我相信对于这种情况有更好的解决方案。请告知如何设计这样的逻辑。提前谢谢。