Я пытаюсь привязать команду к 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, но это не сработало.Это возможно?