Domanda

Sto cercando alcune informazioni su come implementare correttamente l'associazione dei dati su un controllo creato dall'utente.

My UserControl contiene una casella di testo, un pulsante e un MonthCalendar. Sono in grado di collegarsi alla casella di testo all'interno del mio controllo utente, tuttavia, desidero implementare la banca dati sullo UserControl stesso e non fare riferimento alla casella di testo all'interno del controllo.

Ho tentato di impostare una proprietà come segue:

  <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

Tuttavia, quando aggiungo un'origine di associazione al controllo, il campo non viene popolato con i dati, rimane vuoto. Devo fare qualcosa per far apparire successivamente i dati?

Qualcuno può indirizzarmi a un buon tutorial o, se possibile, spiegarlo qui. Il progetto è scritto in VB.NET.

MODIFICA : sto implementando DefaultBindingPropertyAttribute

È stato utile?

Soluzione

A cosa è legata la casella di testo a questo punto? Suggerirei quanto segue:

  1. Nell'evento di caricamento del controllo utente, associa in modo dichiarativo la casella di testo a una variabile membro privata, ad es. private _boundDate as DateTime
  2. Hai settato nel tuo aggiornamento della proprietà boundDate _boundDate

Sembra una lettura abbastanza buona, anche se non l'ho guardata da solo

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top