Procedura dettagliata: creazione di un controllo utente Windows Form che supporta l'associazione dati semplice

Quando si visualizzano i dati nei form delle applicazioni Windows, è possibile scegliere i controlli esistenti dalla Casella degli strumenti oppure creare controlli personalizzati se l'applicazione richiede delle funzionalità non disponibili nei controlli standard. In questa procedura dettagliata viene illustrato come creare un controllo che implementa l'oggetto DefaultBindingPropertyAttribute. Nei controlli che implementano l'oggetto DefaultBindingPropertyAttribute può essere contenuta una proprietà per l'associazione a dati. Questo tipo di controlli sono simili a un oggetto TextBox oppure CheckBox.

Per ulteriori informazioni sulla modifica di controlli, vedere Sviluppo di controlli Windows Form in fase di progettazione.

Durante la modifica dei controlli da utilizzare in scenari di associazione dati, è necessario implementare uno degli attributi di associazione dati riportati di seguito.

Utilizzo di attributi di associazione dati

Implementare l'oggetto DefaultBindingPropertyAttribute su controlli semplici, ad esempio un oggetto TextBox, nei quali viene visualizzata una singola colonna (oppure una proprietà) di dati. Il processo è descritto nella pagina di questa procedura dettagliata.

Implementare l'oggetto ComplexBindingPropertiesAttribute sui controlli, ad esempio un oggetto DataGridView, nei quali vengono visualizzati elenchi (oppure tabelle) di dati. Per ulteriori informazioni, vedere Procedura dettagliata: creazione di un controllo utente Windows Form che supporta l'associazione dati complessa.

Implementare l'oggetto LookupBindingPropertiesAttribute sui controlli, ad esempio ComboBox, nei quali vengono visualizzati elenchi (oppure tabelle) di dati, ma devono presentare una colonna oppure una proprietà singole. Per ulteriori informazioni, vedere Procedura dettagliata: creazione di un controllo utente Windows Form che supporta l'associazione dati di ricerca.

Questa procedura dettagliata consente di creare un controllo semplice in cui sono visualizzati i dati di una singola colonna di una tabella. In questo esempio viene utilizzata la colonna Phone della tabella Customers dal database di esempio Northwind. Nel controllo utente semplice saranno visualizzati i numeri di telefono del cliente in un formato di numero telefonico standard utilizzando un oggetto MaskedTextBox e impostando la maschera su un numero di telefono.

In particolare, vengono illustrate le seguenti operazioni:

  • Creare una nuova applicazione Windows.

  • Aggiunta di un nuovo Controllo utente al progetto.

  • Progettazione visiva del controllo utente.

  • Implementazione dell'attributo DefaultBindingProperty.

  • Creazione di un dataset con la Configurazione guidata origine dati.

  • Impostazione della colonna Telefono della finestra Origini dati per l'utilizzo del nuovo controllo.

  • Creazione di un form per visualizzare i dati nel nuovo controllo.

Prerequisiti

Per completare questa procedura dettagliata è necessario:

Creazione di un'applicazione Windows

Il primo passaggio consiste nella creazione di un'Applicazione Windows.

Per creare un nuovo progetto Windows

  1. In Visual Studio scegliere Progetto dal menu File.

  2. Denominare il progetto SimpleControlWalkthrough.

  3. Selezionare Applicazione Windows e scegliere OK. Per ulteriori informazioni, vedere Creazione di applicazioni per Windows.

    Il progetto SimpleControlWalkthrough viene creato e aggiunto a Esplora soluzioni.

Aggiunta di un controllo utente al progetto

Questa procedura guidata consente la creazione di un controllo associabile a dati semplice da un Controllo utente, quindi l'aggiunta di un elemento Controllo utente al progetto SimpleControlWalkthrough.

Per aggiungere un controllo utente al progetto

  1. Scegliere Aggiungi controllo utente dal menu Progetto.

  2. Digitare PhoneNumberBox nell'area Nome e fare clic su Aggiungi.

    Il controllo PhoneNumberBox viene aggiunto a Esplora soluzioni e viene aperto nella finestra di progettazione.

Progettazione del controllo PhoneNumberBox

Questa procedura dettagliata estende l'oggetto MaskedTextBox esistente per creare il controllo PhoneNumberBox.

Per progettare il controllo PhoneNumberBox

  1. Trascinare un oggetto MaskedTextBox dalla Casella degli strumenti all'area di progettazione del controllo utente.

  2. Selezionare lo smart tag sull'oggetto MaskedTextBox appena trascinato e scegliere Imposta maschera.

  3. Selezionare Numero di telefono nella finestra di dialogo Maschera input e scegliere OK per impostare la maschera.

‎Aggiunta dell'attributo di associazione dati richiesto.

Per controlli semplici che supportano l'associazione dati, implementare l'attributo DefaultBindingPropertyAttribute.

Per implementare l'attributo DefaultBindingProperty

  1. Passare al controllo PhoneNumberBox per la visualizzazione codice. Scegliere Codice dal menu Visualizza.

  2. Sostituire il codice nel controllo PhoneNumberBox con la stringa seguente:

    <System.ComponentModel.DefaultBindingProperty("PhoneNumber")>
    Public Class PhoneNumberBox
    
        Public Property PhoneNumber() As String
            Get
                Return MaskedTextBox1.Text
            End Get
            Set(ByVal value As String)
                MaskedTextBox1.Text = value
            End Set
        End Property
    End Class
    
    using System.Windows.Forms;
    
    namespace CS
    {
        [System.ComponentModel.DefaultBindingProperty("PhoneNumber")]
        public partial class PhoneNumberBox : UserControl
        {
            public string PhoneNumber
            {
                get{ return maskedTextBox1.Text; }
                set{ maskedTextBox1.Text = value; }
            }
    
            public PhoneNumberBox()
            {
                InitializeComponent();
            }
        }
    }
    
  3. Scegliere Compila soluzione dal menu Compila.

Creazione di un'origine dati dal database in uso.

In questa procedura viene utilizzata la Configurazione guidata origine dati per creare un'origine dati basata sulla tabella Customers contenuta nel database di esempio Northwind. Per creare la connessione è necessario disporre dell'accesso al database di esempio Northwind. Per informazioni sull'impostazione del database di esempio Northwind, vedere Procedura: installare database di esempio.

Per creare l'origine dati

  1. Scegliere Mostra origini dati dal menu Dati.

  2. Nella finestra Origini dati selezionare Aggiungi nuova origine dati per avviare la Configurazione guidata origine dati.

  3. Selezionare Database nella pagina Scegliere un tipo di origine dati e scegliere Avanti.

  4. Nella pagina Seleziona connessione dati effettuare una delle seguenti operazioni:

    • Nell'elenco a discesa, selezionare la connessione dati al database di esempio Northwind, se presente.

      Oppure

    • Selezionare Nuova connessione per aprire la finestra di dialogo Aggiungi/Modifica connessione. Per ulteriori informazioni, vedere Finestra di dialogo Aggiungi/Modifica connessione (generale).

  5. Se il database in uso richiede una password, selezionare l'opzione che consente di includere dati riservati, quindi scegliere Avanti.

  6. Scegliere Avanti nella pagina Salva la stringa di connessione nel file di configurazione dell'applicazione.

  7. Espandere il nodo Tabelle nella pagina Seleziona oggetti di database.

  8. Selezionare la tabella Customers e scegliere Fine.

    L'oggetto NorthwindDataSet viene aggiunto al progetto e la tabella Customers viene visualizzata nella finestra Origini dati.

Impostazione della colonna Telefono per l'utilizzo del controllo PhoneNumberBox

Nella finestra Origini dati è possibile impostare il controllo da creare prima dell'operazione di trascinamento degli elementi nel form in uso.

Per impostare la colonna Telefono da associare al controllo PhoneNumberBox

  1. Aprire Form1 nella finestra di progettazione.

  2. Espandere il nodo Customers nella finestra Origini dati.

  3. Fare clic sulla freccia a discesa del nodo Customers e scegliere Dettagli dall'elenco dei controlli.

  4. Fare clic sulla freccia a discesa sulla colonna Telefono e scegliere Personalizza.

  5. Selezionare PhoneNumberBox dall'elenco dei controlli associati nella finestra di dialogo relativa alle opzioni di Personalizzazione dell'interfaccia utente dati.

  6. Fare clic sulla freccia a discesa sulla colonna Telefono e scegliere PhoneNumberBox.

Aggiunta di controlli al form

È possibile creare i controlli con associazione a dati mediante il trascinamento degli elementi dalla finestra Origini dati al form.

Per creare controlli con associazione a dati nel form

  • Trascinare il nodo Customers principale dalla finestra Origini dati al form e verificare che sia utilizzato il controllo PhoneNumberBox per la visualizzazione dei dati nella colonna Phone.

    Nel form vengono visualizzati i controlli con associazione a dati con etichette descrittive e un controllo Toolstrip (BindingNavigator) per lo spostamento all'interno dei record. Nella barra dei componenti vengono visualizzati gli oggetti NorthwindDataSet, CustomersTableAdapter BindingSource e BindingNavigator.

Esecuzione dell'applicazione

Per eseguire l'applicazione

  • Premere F5 per eseguire l'applicazione.

Passaggi successivi

A seconda dei requisiti dell'applicazione, è possibile eseguire diverse operazioni una volta terminata la creazione di un controllo che supporta le associazioni di dati. Tra le operazioni successive più comuni sono incluse le seguenti:

Vedere anche

Attività

Procedura: impostare il controllo da creare per il trascinamento dalla finestra Origini dati

Concetti

Associazione di controlli Windows Form ai dati in Visual Studio

Associazione di controlli ai dati in Visual Studio

Altre risorse

Cenni preliminari sulle applicazioni dati in Visual Studio

Connessione ai dati in Visual Studio

Preparazione dell'applicazione al ricevimento di dati

Recupero di dati nell'applicazione

Modifica di dati nell'applicazione

Convalida dei dati

Salvataggio di dati