Мне требуется одноразовая привязка данных между флажком (IsChecked propety) в childWindow и вложенной переменной-членом в его объекте DataContext, чтобы только переменная-член initial IsChecked устанавливала только свойство.Переменная-член (источник привязки) не является INotifyPropertyChanged или помечена как DependencyProperty, но я думаю, что это нормально, потому что я хочу, чтобы она была оценена только один раз, когда она получит свое начальное значение.Привязка (в testChildWindow.xaml):
<CheckBox Content="Show Username?" Name="cbShowUser" IsChecked="{Binding Path=User.showUser}"/>
Настройка DataContext (в коде родительского окна):
testChildWindow dlgBox = new testChildWindow();
dlgBox.DataContext = (this.DataContext as IAssignDlgViewModel).AssignVM("defaultChildWindow");
dlgBox.Show();
ДанныеПеременная Context / Member:
public class testChildWindowViewModel : IDlgViewUpdate
{
public User
...
}
public class User
{
public bool showUser;
public User()
{
showUser = true;
}
...
}
Если я сделаю свойство источника привязки Vm (showUser) свойством зависимости в (не вложенном) testChildWindowViewModel, то привязка будет работать.Но все другие комбинации кажутся ошибочными.
Почему это должно быть свойство зависимости (или INotifyPropertyChanged?) Для одноразовой привязки?
Почему я не могу заставить его работать навложенный уровень?
Спасибо !!!