Condividi tramite


Procedura: eseguire l'associazione ai risultati di una query LINQ

Aggiornamento: novembre 2007

In questo esempio viene illustrato come eseguire una query LINQ e successivamente eseguire l'associazione ai risultati ottenuti.

Esempio

Nell'esempio seguente vengono create due caselle di riepilogo. La prima casella di riepilogo contiene tre voci di elenco.

<ListBox SelectionChanged="ListBox_SelectionChanged"
         SelectedIndex="0" Margin="10,0,10,0" >
    <ListBoxItem>1</ListBoxItem>
    <ListBoxItem>2</ListBoxItem>
    <ListBoxItem>3</ListBoxItem>
</ListBox>
<ListBox Width="400" Margin="10" Name="myListBox"
         HorizontalContentAlignment="Stretch"
         ItemsSource="{Binding}"
         ItemTemplate="{StaticResource myTaskTemplate}"/>

Selezionando un elemento dalla prima casella di riepilogo viene richiamato il seguente gestore eventi. In questo esempio, Tasks è un insieme di oggetti Task. La classe Task dispone di una proprietà denominata Priority. Questo gestore eventi esegue una query LINQ che restituisce l'insieme di oggetti Task con il valore di priorità selezionato, che viene quindi impostato come DataContext:

using System.Linq;


...


Tasks tasks = new Tasks();


...


private void ListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    int pri = Int32.Parse(((sender as ListBox).SelectedItem as ListBoxItem).Content.ToString());

    this.DataContext = from task in tasks
                       where task.Priority == pri
                       select task;
}

La seconda casella di riepilogo esegue l'associazione a tale insieme perché il valore di ItemsSource è impostato su {Binding}. Di conseguenza visualizza l'insieme restituito, in base a myTaskTemplateDataTemplate. Per l'esempio completo, vedere Esempio di query LINQ.

Vedere anche

Attività

Procedura: rendere i dati disponibili per l'associazione in XAML

Procedura: eseguire l'associazione di un insieme e visualizzare informazioni in base alla selezione effettuata

Concetti

Novità di Windows Presentation Foundation versione 3.5

Cenni preliminari sull'associazione dati

Altre risorse

Esempi di associazione dati

Procedure relative all'associazione dati