Пользовательские элементы управления с привязкой к базе данных в .NET

StackOverflow https://stackoverflow.com/questions/603318

Вопрос

Я ищу некоторую информацию о том, как правильно реализовать привязку данных к созданному пользователем элементу управления.

Мой пользовательский элемент управления содержит текстовое поле, кнопку и 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

Это было полезно?

Решение

К чему привязано текстовое поле на данный момент?Я бы предложил следующее:

  1. В событии загрузки пользовательского элемента управления декларативно привяжите текстовое поле к закрытой переменной-члену, напримерprivate _boundDate как дата-время
  2. Есть ли у вас параметр в вашем свойстве boundDate update _boundDate

Похоже, это довольно хорошее чтение, хотя я сам его не просматривал

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top