Связывание с вложенным свойством достаточно просто:
checkBox1.DataBindings.Add(new Binding("Checked", bindingSource, "myProperty")); //Normal binding
checkBox2.DataBindings.Add(new Binding("Checked", bindingSource, "myProperty.innerProperty")); //Nested property
Однако, когда myProperty.innerProperty
изменено, события не возникают - BindingSource никогда не уведомляется об этом изменении.
Я читал, что решение должно" убедиться, что когда объект innerProperty
вызывает событие PropertyChanged
, MyProperty
, содержащий innerProperty
, захватывает событие, а также вызывает событие PropertyChanged
.
Однако инфраструктура entity не делает этого для меня, и я бы предпочел не проходить через каждый экземпляр каждого класса и проводки настраиваемый метод для каждого свойства навигации, чтобы сделать мои классы связанными. Есть ли подходящий способ обхода, чтобы объекты связывались?