Пользовательские элементы управления с привязкой к базе данных в .NET
-
03-07-2019 - |
Вопрос
Я ищу некоторую информацию о том, как правильно реализовать привязку данных к созданному пользователем элементу управления.
Мой пользовательский элемент управления содержит текстовое поле, кнопку и MonthCalendar.Я могу привязать данные к текстовому полю внутри моего пользовательского элемента управления, однако я хочу реализовать привязку данных к самому UserControl, а не ссылаться на textbox внутри элемента управления.
Я попытался установить Свойство следующим образом:
<System.ComponentModel.Bindable(True)> _
Public Property BoundDate() As DateTime
Get
Return _currentSelectedDate
End Get
Set(ByVal value As DateTime)
SetDateTime(value, True)
End Set
End Property
Однако, когда я добавляю источник привязки к элементу управления, поле не заполняется данными, оно остается пустым.Нужно ли мне что-то сделать, чтобы данные появились позже?
Кто-нибудь может направить меня к хорошему учебнику или, если возможно, объяснить это здесь.Проект написан на VB.NET.
Редактировать:Я реализую атрибут DefaultBindingPropertyAttribute
Решение
К чему привязано текстовое поле на данный момент?Я бы предложил следующее:
- В событии загрузки пользовательского элемента управления декларативно привяжите текстовое поле к закрытой переменной-члену, напримерprivate _boundDate как дата-время
- Есть ли у вас параметр в вашем свойстве boundDate update _boundDate
Похоже, это довольно хорошее чтение, хотя я сам его не просматривал