Condividi tramite


Creare tabelle di ricerca nelle applicazioni WPF di .NET Framework

Annotazioni

La DataSet classe e le classi correlate sono tecnologie .NET Framework legacy dei primi anni '2000 che consentono alle applicazioni di lavorare con i dati in memoria mentre le app vengono disconnesse dal database. Le tecnologie sono particolarmente utili per le app che consentono agli utenti di modificare i dati e rendere persistenti le modifiche apportate al database. Sebbene i set di dati siano una tecnologia di successo comprovata, l'approccio consigliato per le nuove applicazioni .NET consiste nell'usare Entity Framework Core. Entity Framework offre un modo più naturale per usare i dati tabulari come modelli a oggetti e dispone di un'interfaccia di programmazione più semplice.

Il termine tabella di ricerca (talvolta detta associazione di ricerca) descrive un controllo che visualizza le informazioni di una tabella dati in base al valore di un campo chiave esterna in un'altra tabella. È possibile creare una tabella di ricerca trascinando il nodo principale di una tabella padre o di un oggetto nella finestra Origini dati in un controllo già associato a una colonna o a una proprietà in una tabella figlio correlata.

Si consideri, ad esempio, una tabella di Orders in un database di vendita. Ogni record nella Orders tabella include un oggetto CustomerID che indica il cliente che ha effettuato l'ordine. CustomerID è una chiave esterna che punta a un record cliente nella tabella Customers. Quando si visualizza un elenco di ordini dalla Orders tabella, è possibile visualizzare il nome effettivo del cliente anziché .CustomerID Poiché il nome del cliente si trova nella Customers tabella, è necessario creare una tabella di ricerca per visualizzare il nome del cliente. La tabella di ricerca usa il CustomerID valore nel Orders record per spostarsi nella relazione e restituire il nome del cliente.

Per creare una tabella di ricerca

  1. Aggiungi uno dei seguenti tipi di origini dati con i relativi dati al tuo progetto.

    Annotazioni

    Prima di creare una tabella di ricerca, due tabelle o oggetti correlati devono esistere come origine dati per il progetto.

  2. Aprire Progettazione WPF e assicurarsi che la finestra di progettazione contenga un contenitore che rappresenta una destinazione di rilascio valida per gli elementi nella finestra Origini dati .

    Per altre informazioni sulle destinazioni di rilascio valide, vedere Associare controlli WPF ai dati in Visual Studio.

  3. Scegliere Mostra origini dati dal menu Dati per aprire la finestra Origini dati.

  4. Espandere i nodi nella finestra Origini dati fino a visualizzare la tabella o l'oggetto padre e la tabella o l'oggetto figlio correlato.

    Annotazioni

    La tabella o l'oggetto figlio correlato è il nodo che appare come un nodo figlio espandibile sotto la tabella o l'oggetto padre.

  5. Fare clic sul menu a discesa per il nodo figlio e selezionare Dettagli.

  6. Espandere il nodo figlio.

  7. Nel nodo figlio, fare clic sull'elenco a discesa per l'elemento che relaziona i dati del figlio e del genitore. Nell'esempio precedente si tratta del nodo CustomerID . Selezionare uno dei tipi di controlli seguenti che supportano l'associazione di ricerca:

  8. Trascinare il nodo figlio dalla finestra Origini dati in un contenitore nella finestra di progettazione WPF. Nell'esempio precedente il nodo figlio è il nodo Orders .

    Visual Studio genera codice XAML che crea nuovi controlli associati a dati per ognuno degli elementi trascinati. XAML aggiunge anche un nuovo oggetto CollectionViewSource per la tabella o l'oggetto figlio alle risorse della destinazione di rilascio. Per alcune origini dati, Visual Studio genera anche codice per caricare i dati nella tabella o nell'oggetto . Per altre informazioni, vedere Associare controlli WPF ai dati in Visual Studio.

  9. Trascina il nodo padre dalla finestra Origini dati sul controllo di associazione di ricerca che hai creato in precedenza. Nell'esempio precedente il nodo padre è il nodo Customers .

    Visual Studio imposta alcune proprietà nel controllo per configurare l'associazione di ricerca. Nella tabella seguente sono elencate le proprietà modificate da Visual Studio. Se necessario, puoi modificare queste proprietà nel codice XAML o nella finestra Proprietà .

    Proprietà Spiegazione dell'impostazione
    ItemsSource Questa proprietà specifica la raccolta o l'associazione utilizzata per ottenere i dati visualizzati nel controllo . Visual Studio imposta questa proprietà su CollectionViewSource per i dati principali trascinati nel controllo.
    DisplayMemberPath Questa proprietà specifica il percorso dell'elemento di dati visualizzato nel controllo . Visual Studio imposta questa proprietà sulla prima colonna o proprietà nei dati padre, dopo la chiave primaria, con un tipo di dati stringa.

    Se si desidera visualizzare una colonna o una proprietà diversa nei dati padre, impostare questa proprietà sul percorso di una proprietà diversa.
    SelectedValue Visual Studio associa questa proprietà alla colonna o alla proprietà dei dati figlio trascinati nella finestra di progettazione. Si tratta della chiave esterna per i dati padre.
    SelectedValuePath Visual Studio imposta questa proprietà sul percorso della colonna o della proprietà dei dati figlio che rappresenta la chiave esterna ai dati padre.