Каков «лучший» (или наиболее часто используемый) подход при привязке сложного класса к пользовательскому элементу управления для повторного использования?
Я пытаюсь создать несколько библиотек многократного использования для классов,и я не уверен, какой подход я должен использовать.Пример: я хочу создать библиотеку адресов, которая определяет и класс Address (со свойствами Line1, Line2 и т. Д.), Его логику проверки и AddressControl, который действует как средство просмотра / редактирования со связанными полями для каждого свойства.
При использовании у меня может быть класс клиента со свойствами BillingAddress, DeliveryAddress, и я бы хотел связать их в своем контроле клиента следующим образом:
<addressLib:AddressControl [xxx]="{Binding BillingAddress}" />
Итак, вопрос в том, что я должен добавитьXXX?
Первоначально я думал о создании DependencyProperty 'Address' для элемента управления:
<addressLib:AddressControl Address="{Binding BillingAddress}" />
Но теперь я уверен, что могу просто использовать существующее свойство DataContext?
<addressLib:AddressControl DataContext="{Binding BillingAddress}" />
Это лучший подход?Есть ли какие-либо проблемы, например, обновления или NotifyPropertyChange?
большое спасибо за вашу помощь!