Procedura dettagliata: visualizzazione di dati correlati in un Windows Form

In molti scenari relativi alle applicazioni può essere necessario utilizzare dati provenienti da più tabelle, spesso anche correlate,ovvero utilizzare relazioni padre-figlio.Può ad esempio essere necessario creare un form in cui la selezione del record di un cliente determini la visualizzazione degli ordini relativi.Per visualizzare i record correlati sul form è necessario impostare la proprietà DataSource dell'oggetto figlio BindingSource sull'oggetto padre BindingSource (non sulla tabella figlio) e impostare la proprietà DataMember dell'oggetto figlio BindingSource sulla relazione dati che collega le tabelle padre e figlio.

Di seguito vengono elencate le attività illustrate nella procedura dettagliata:

  • Creazione di un progetto Applicazione Windows.

  • Creazione e configurazione di un dataset nell'applicazione in base alle tabelle Customers e Orders del database Northwind mediante la Configurazione guidata origine dati.

  • Aggiunta di controlli per visualizzare i dati della tabella Customers.

  • Aggiunta di controlli per visualizzare le voci della tabella Orders in base al Customer selezionato.

  • Esecuzione del test dell'applicazione selezionando diversi clienti e verificando che per il cliente selezionato vengano visualizzati gli ordini corrispondenti.

Prerequisiti

Per completare questa procedura dettagliata, è necessario quanto segue:

Creazione del progetto

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

Per creare il nuovo progetto Applicazione Windows

  1. Scegliere il comando per la creazione di un nuovo progetto dal menu File.

  2. Assegnare al progetto il nome RelatedDataWalkthrough.

  3. Selezionare Applicazione Windows e scegliere OK.Per ulteriori informazioni, vedere Sviluppo di applicazioni client.

    Il progetto RelatedDataWalkthrough viene creato e aggiunto a Esplora soluzioni.

Creazione dell'origine dati

In questo passaggio verrà creato un dataset basato sulle tabelle Customers e Orders del database di esempio Northwind.

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:

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

      In alternativa

    • 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 le tabelle Customers e Orders, quindi scegliere Fine.

    Il dataset NorthwindDataSet viene aggiunto al progetto e la tabella Customers viene visualizzata nella finestra Origini dati.

Creazione di controlli per visualizzare i dati della tabella Customers

Per creare controlli che consentano di visualizzare i dati del cliente (record padre)

  1. Nella finestra Origini dati selezionare la tabella Customers, quindi fare clic sulla freccia a discesa.

  2. Selezionare Dettagli dal menu.

  3. Trascinare il nodo Customers principale dalla finestra Origini dati nella parte superiore del Form1.

    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.Sulla barra dei componenti vengono visualizzati gli oggetti NorthwindDataSet, CustomersTableAdapter, BindingSource e BindingNavigator.

Creazione di controlli per visualizzare i dati della tabella Orders

Finestra Origini dati con visualizzazione delle relazioni

Per creare controlli che consentano di visualizzare gli ordini di ciascun cliente (record figlio)

  • Nella finestra Origini dati espandere il nodo Customers e selezionare l'ultima colonna nella tabella Customers, che rappresenta un nodo Orders espandibile, e trascinarla nella parte inferiore di Form1.

    Al form viene aggiunto un oggetto DataGridView, mentre sulla barra dei componenti vengono aggiunti un nuovo componente BindingSource (OrdersBindingSource) e un TableAdapter (OrdersTableAdapter).

    [!NOTA]

    Aprire la finestra Proprietà e selezionare l'OrdersBindingSource.Consultare la documentazione sulle proprietà DataSource e DataMember per informazioni su come è configurata l'associazione per la visualizzazione dei record correlati.La proprietà DataSource è impostata su CustomersBindingSource (elemento BindingSource della tabella padre), anziché sulla tabella Orders.La proprietà DataMember è impostata su FK_Orders_Customers, che rappresenta il nome dell'oggetto DataRelation che collega tra loro le tabelle.

Verifica dell'applicazione

Per eseguire il test dell'applicazione

  1. ‎Premere F5 per eseguire l'applicazione.

  2. Selezionare diversi clienti mediante l'oggetto CustomersBindingNavigator per verificare che nel controllo DataGridView vengano visualizzati gli ordini corretti.

Passaggi successivi

A seconda dei requisiti dell'applicazione, si potranno eseguire diverse operazioni una volta terminata la creazione di un form master-dettagli.È possibile apportare un miglioramento a questa procedura dettagliata, ovvero:

Vedere anche

Attività

Procedura: visualizzare dati correlati in un'applicazione Windows Form

Riferimenti

Origini dati (finestra)

Cenni preliminari sul componente BindingSource

Cenni preliminari sul controllo BindingNavigator (Windows Form)

Concetti

Novità relative allo sviluppo di applicazioni dati in Visual Studio 2012

Associazione di controlli Windows Form ai dati in Visual Studio

Cenni preliminari sulle origini dati

Cenni preliminari sugli oggetti TableAdapter

Altre risorse

Procedure dettagliate relative ai dati