Procedura dettagliata: associazione dati complessa in un progetto a livello di documento

In questa procedura dettagliata vengono illustrate le nozioni di base sull'associazione dati complessa in un progetto a livello di documento.È possibile associare più celle di un foglio di lavoro di Microsoft Office Excel ai campi presenti nel database Northwind di SQL Server.

Si applica a: le informazioni fornite in questo argomento sono valide per i progetti a livello di documento per Excel 2013 ed Excel 2010. Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazioni di Office.

In questa procedura dettagliata vengono illustrate le attività seguenti:

  • Aggiunta di un'origine dati al progetto Cartella di lavoro.

  • Aggiunta di controlli con associazione a dati a un foglio di lavoro.

  • Salvataggio nel database delle modifiche apportate ai dati.

[!NOTA]

Nel computer in uso è possibile che vengano visualizzati nomi o percorsi diversi per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per ulteriori informazioni vedere Impostazioni di Visual Studio.

Prerequisiti

Per completare la procedura dettagliata, è necessario disporre dei componenti seguenti:

-

Una versione di Visual Studio 2012 che include gli strumenti per sviluppatori di Microsoft Office. Per ulteriori informazioni, vedere [Configurazione di un computer per sviluppare soluzioni Office](bb398242\(v=vs.110\).md).
  • Excel 2013 o Excel 2010. 

  • Accesso a un server in cui sia presente il database di esempio di SQL Server Northwind.

  • Autorizzazioni per leggere il database SQL Server o scrivere in esso.

Creazione di un nuovo progetto

Il primo passaggio consiste nella creazione di un progetto cartella di lavoro di Excel.

Per creare un nuovo progetto

  • Creare un progetto cartella di lavoro di Excel con il nome My Complex Data Binding.Nella procedura guidata, scegliere Crea un nuovo documento.

    Per ulteriori informazioni, vedere Procedura: creare progetti di Office in Visual Studio.

    La nuova cartella di lavoro di Excel viene aperta nella finestra di progettazione di Visual Studio e il progetto My Complex Data Binding viene aggiunto in Esplora soluzioni.

Creazione dell'origine dati

Utilizzare la finestra Origini dati per aggiungere un DataSet tipizzato al progetto.

Per creare l'origine dati

  1. Se la finestra Origini dati non è visibile, vengono visualizzati da, sulla barra dei menu, scegliente Visualizza, Altre finestre, Origini dati.

  2. Scegliere Aggiungi nuova origine dati per avviare Configurazione guidata origine dati.

  3. Selezionare Database e scegliere Avanti.

  4. Selezionare una connessione dati al database di SQL Server di esempio Northwind oppure aggiungere una nuova connessione tramite il pulsante Nuova connessione.

  5. Dopo aver selezionato o creato una connessione, scegliere Avanti.

  6. Deselezionare l'opzione per salvare la connessione, se selezionata, quindi scegliere Avanti.

  7. Espandere il nodo Tabelle nella finestra Oggetti di database.

  8. Selezionare la casella di controllo accanto alla tabella Employees.

  9. Fare clic su Fine.

La procedura guidata aggiungerà la tabella Employees alla finestra Origini dati.Inoltre, aggiungerà un DataSet tipizzato al progetto visualizzato in Esplora soluzioni.

Aggiunta di controlli al foglio di lavoro

Quando viene aperta la cartella di lavoro, in un foglio di lavoro verrà visualizzata la tabella Employees.Gli utenti potranno apportare modifiche ai dati e salvare quindi tali modifiche nel database facendo clic su un pulsante.

Per associare automaticamente il foglio di lavoro alla tabella, è possibile aggiungere un controllo ListObject al foglio di lavoro dalla finestra Origini dati.Per consentire all'utente di salvare le modifiche, aggiungere un controllo Button dalla Casella degli strumenti.

Per aggiungere un oggetto elenco

  1. Verificare che la cartella di lavoro My Complex Data Binding.xlsx sia aperta nella finestra di progettazione di Visual Studio, con Foglio1 visualizzare.

  2. Aprire la finestra Origini dati e selezionare il nodo Employees.

  3. Fare clic sulla freccia a discesa visualizzata.

  4. Selezionare ListObject nell'elenco a discesa.

  5. Trascinare la tabella Employees nella cella A6.

    Un controllo ListObject denominato EmployeesListObject viene creato nella cella A6.Contemporaneamente vengono aggiunti al progetto un oggetto BindingSource denominato EmployeesBindingSource, un adattatore per la tabella e un'istanza dell'oggetto DataSet.Il controllo è associato a BindingSource, che a sua volta è associata all'istanza di DataSet.

Per aggiungere un pulsante

  • Dalla scheda Controlli comuni della Casella degli strumenti, aggiungere un controllo Button alla cella A4 del foglio di lavoro.

Il passaggio successivo consiste nell'aggiunta di testo al pulsante quando il foglio di lavoro viene aperto.

Inizializzazione del controllo

Aggiungere testo al pulsante nel gestore eventi Startup.

Per inizializzare il controllo

  1. Fare clic con il pulsante destro del mouse su Sheet1.vb o Sheet1.cs in Esplora soluzioni e scegliere Visualizza codice dal menu di scelta rapida.

  2. Aggiungere il codice riportato di seguito al metodo Sheet1_Startup per impostare il testo per button.

    Me.Button1.Text = "Save"
    
    this.button1.Text = "Save";
    
  3. Solo per C#, aggiungere un gestore eventi per l'evento Click al metodo Sheet1_Startup.

    this.button1.Click += new EventHandler(button1_Click);
    

Aggiungere ora il codice per la gestione dell'evento Click del pulsante.

Salvataggio delle modifiche nel database

Le eventuali modifiche apportate ai dati sono limitate al solo DataSet locale finché non vengono salvate nuovamente in modo esplicito nel database.

Per salvare le modifiche nel database

  • Aggiungere un gestore eventi per l'evento Click di button e aggiungere il codice riportato di seguito per eseguire il commit nel database di tutte le modifiche apportate nel dataset.

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        Try
            Me.EmployeesTableAdapter.Update(Me.NorthwindDataSet.Employees)
    
        Catch ex As System.Data.DataException
            MessageBox.Show(ex.Message)
        End Try
    End Sub
    
    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            this.employeesTableAdapter.Update(this.northwindDataSet.Employees);
        }
        catch (System.Data.DataException ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
    

Verifica dell'applicazione

A questo punto è possibile testare la cartella di lavoro per verificare che i dati vengano visualizzati nel modo previsto e che sia possibile modificare i dati contenuti nell'oggetto elenco.

Per eseguire il test dell'associazione dati

  • Premere F5.

    All'apertura della cartella di lavoro, verificare che il controllo ListObject contenga i dati della tabella Employees.

Per modificare i dati

  1. Fare clic sulla cella B7, che dovrà contenere il nome Davolio.

  2. Digitare il nome Anderson e premere INVIO.

Per modificare l'intestazione di una colonna

  1. Fare clic sulla cella che contiene l'intestazione di colonna LastName.

  2. Digitare Last Name, includendo uno spazio tra le due parole, quindi premere INVIO.

Per salvare i dati

  1. Scegliere Salva nel foglio di lavoro.

  2. Uscire da Excel.Scegliere No quando viene visualizzata la richiesta di salvare le modifiche apportate.

  3. Premere F5 per eseguire nuovamente il progetto.

    Nel controllo ListObject vengono inseriti i dati della tabella Employees.

  4. Il nome presente nella cella B7 è ancora Anderson a causa della modifica apportata ai dati e salvata nel database.L'intestazione di colonna LastName è stata riportata alla forma originale senza spazi in quanto tale intestazione non è associata al database e le modifiche apportate al foglio di lavoro non sono state salvate.

Per aggiungere nuove righe

  1. Selezionare una cella all'interno del controllo ListObject.

    Nella parte inferiore dell'elenco viene visualizzata una nuova riga, nella cui prima cella è contenuto un asterisco (*).

  2. Aggiungere le informazioni riportate di seguito nella riga vuota.

    EmployeeID

    LastName

    FirstName

    Titolo

    10

    Ito

    Shu

    Sales Manager

Per eliminare le righe

  • Fare clic con il pulsante destro del mouse sul numero 16 (riga 16) all'estremità sinistra del foglio di lavoro, quindi scegliere Elimina.

Per ordinare le righe all'interno del controllo ListObject

  1. Selezionare una cella all'interno del controllo ListObject.

    In ciascuna intestazione di colonna vengono visualizzati pulsanti a forma di freccia.

  2. Fare clic sul pulsante freccia nell'intestazione di colonna Last Name.

  3. Scegliere Ordinamento crescente.

    Le righe vengono ordinate alfabeticamente in base ai cognomi.

Per filtrare le informazioni

  1. Selezionare una cella all'interno del controllo ListObject.

  2. Fare clic sul pulsante freccia nell'intestazione di colonna Title.

  3. Scegliere Sales Representative.

    Nel controllo ListObject vengono visualizzate solo le righe che contengono Sales Representative nella colonna Title.

  4. Fare nuovamente clic sul pulsante freccia nell'intestazione di colonna Title.

  5. Fare clic su (Tutto).

    Il filtro viene rimosso e vengono visualizzate tutte le righe.

Passaggi successivi

In questa procedura dettagliata sono illustrati i concetti di base sull'associazione di una tabella di un database a un controllo ListObject.Di seguito sono elencate alcune procedure che potrebbero essere necessarie per estendere il progetto:

Vedere anche

Attività

Procedura dettagliata: associazione dati semplice in un progetto a livello di documento

Altre risorse

Associazione di dati ai controlli nelle soluzioni Office

Dati nelle soluzioni Office