Связывание команд с подмоделью - PullRequest
0 голосов
/ 06 декабря 2011

Я пытаюсь привязать команду к ViewModel, которая является свойством другой ViewModel.Если я связываюсь с командой в родительской модели представления (т. Е. DataContext), она работает нормально.Если я пытаюсь связать модель представления, которая является частью моего текстового контекста, это не сработает (ничего не происходит).Следующий код иллюстрирует, как все структурировано.

public class DataViewModel : ViewModelBase
{
   private ICommand _myCommand;
   public ICommand MyCommand {get{return _myCommand;}}

   public DataViewModel()
   {
       _myCommand=new DelegateCommand(myMethod,null);
   }

   private myMethod( object o)
   {
     // do whatever
   }
}

public class ParentViewModel 
{
   private DataViewModel _dataContainer=new DataViewModel();
   public DataViewModel DataContainer {get {return _dataContainer;} set {_dataContainer=value;}}
}

И мой XAML выглядит следующим образом: Опять же, мое представление привязано к ParentViewModel и работает нормально, а команды, которые живут непосредственно в ParentViewModel, работают нормально.

<Button Command={Binding Path=DataContainer.MyCommand} Content="Get Data />

Я пытался установить DataContext кнопки для DataContainer, но это не сработало.Это возможно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...