Поддерживает ли mvvmcross привязку к вложенным свойствам?Связывание суб-свойств MvvmCross
Например, у меня есть модель представления следующим образом:
class MainViewModel : MvxViewModel
{
public SubViewModelBase SubViewModel
{
get { return _subViewModel; }
set { _subViewModel = value; RaisePropertyChanged(() => SubViewModel); }
}
}
Суб вид модели может измениться, но MainView будет связываться с теми же свойствами, для всех классов SubViewModelBase ... класс пример SubViewModelBase следующим :
class SubViewModelBase : MvxViewModel
{
public bool ShowIndeterminantProgress
{
get { return _showIndeterminantProgress; }
set { _showIndeterminantProgress = value; RaisePropertyChanged(() => ShowIndeterminantProgress);}
}
// ... More common properties ...
}
Так MainView идеале связывать как это
this.CreateBinding(_progressBar)
.For(view=> view.Visibility)
.To<MainViewModel>(vm => vm.SubViewModel.ShowIndeterminantProgress)
.WithConversion("Visibility")
.Apply();
Должна ли эта работа? Кажется, что он работает, но в выходе нет ошибок привязки?
Спасибо, Стюарт. Так что это работает, вы правы.У свойства, которое, как представляется, возникает проблема, является свойство Pressed [link] http://stackoverflow.com/questions/17926975/android-view-states-pressed-activated-selected-etc-bindings-do-i-have- to-wr, связанный в subviewmodel (на Android). Я продолжу смотреть на это, отладчик попадает в getter свойства, но сеттер никогда не попадает, даже когда я использую двухсторонний режим. Но другие вложенные свойства работают так, как я ожидал. Благодаря! – AlexUT