2009-11-30 13 views
9

Qual è la sintassi corretta per selezionare un elemento della casella combinata con il valore (non indice) in XAML puro?Come creare una semplice casella combinata con il valore selezionato in XAML?

non funziona:

<StackPanel> 
    <ComboBox SelectedValue="CA"> 
     <ComboBoxItem Tag="CO">Colorado</ComboBoxItem> 
     <ComboBoxItem Tag="CA">California</ComboBoxItem> 
     <ComboBoxItem Tag="NM">New Mexico</ComboBoxItem> 
    </ComboBox> 
</StackPanel> 

non funziona:

<StackPanel> 
    <ComboBox SelectedValue="CA"> 
     <ComboBoxItem Value="CO">Colorado</ComboBoxItem> 
     <ComboBoxItem Value="CA">California</ComboBoxItem> 
     <ComboBoxItem Value="NM">New Mexico</ComboBoxItem> 
    </ComboBox> 
</StackPanel> 

Anche questo non funziona:

<ComboBox SelectedValue="Colorado"> 
    <ComboBoxItem Tag="CO">Colorado</ComboBoxItem> 
    <ComboBoxItem Tag="CA">California</ComboBoxItem> 
    <ComboBoxItem Tag="NM">New Mexico</ComboBoxItem> 
</ComboBox> 

Questo non funziona:

<StackPanel> 
    <ComboBox SelectedItem="CA"> 
     <ComboBoxItem Tag="CO">Colorado</ComboBoxItem> 
     <ComboBoxItem Tag="CA">California</ComboBoxItem> 
     <ComboBoxItem Tag="NM">New Mexico</ComboBoxItem> 
    </ComboBox> 
</StackPanel> 

risposta

16

Penso che questo dovrebbe funzionare. Provare.

<StackPanel> 
    <ComboBox> 
     <ComboBoxItem Tag="CO">Colorado</ComboBoxItem> 
     <ComboBoxItem Tag="CA" IsSelected="True">California</ComboBoxItem> 
     <ComboBoxItem Tag="NM">New Mexico</ComboBoxItem> 
    </ComboBox> 
</StackPanel> 
+2

ComboBoxItem non ha una proprietà "Valore". –

+2

oh mi dispiace, dovrebbe essere Tag, non valore, è stato un errore da me – martin

1

L'elemento ComboBox ha una proprietà SelectedItem, forse questo è quello che vi serve.

4
<ComboBox SelectedValuePath="Content" SelectedValue="{Binding Source="...", Path="..."}"> 
    <ComboBoxItem Content="..." isSelected="true"/> 
    <ComboBoxItem Content="..." /> 
    <ComboBoxItem Content="..." /> 
</ComboBox> 

Dovrebbe funzionare con i contenuti, tag ... o qualsiasi altra proprietà che desideri associare.

1
<StackPanel> 
    <ComboBox AllowDrop="True"> 
     <ComboBoxItem Tag="CO">Colorado</ComboBoxItem> 
     <ComboBoxItem Tag="CA" IsSelected="True">California</ComboBoxItem> 
     <ComboBoxItem Tag="NM">New Mexico</ComboBoxItem> 
    </ComboBox> 
</StackPanel> 

È necessario impostare AllowDrop = "True" per la casella combinata e isselected per l'articolo.

Problemi correlati