Mam prosty ComboBox, który chcę wyzwalać osobne polecenia za każdym razem, gdy zmienia się wybrana wartość. Oto przykład mojego znaczników:Wiązanie poleceń do ComboBoxItem w WPF
<WrapPanel Grid.Row="0" Visibility="{Binding ShowToggleViewFeedViewManual}">
<ComboBox Margin="3,3,0,0">
<ComboBoxItem IsEnabled="{Binding CanSelectViewFeedData}" >
<ComboBoxItem.CommandBindings>
<CommandBinding Command="SelectViewFeedDataCommand" />
</ComboBoxItem.CommandBindings>
<TextBlock Text="View Feed Data"/>
</ComboBoxItem>
<ComboBoxItem IsEnabled="{Binding CanSelectViewManualData}">
<ComboBoxItem.CommandBindings>
<CommandBinding Command="SelectManualFeedDataCommand" />
</ComboBoxItem.CommandBindings>
<TextBlock Text="View Manual Data"/>
</ComboBoxItem>
</ComboBox>
</WrapPanel>
otrzymuję komunikat o błędzie informujący, „nie można przekonwertować«SelectViewFeedDataCommand»”. Otrzymuję podobny błąd także dla drugiego elementu ComboBoxItem. ICommand jest zdefiniowany w klasie ViewModel, która jest DataSource dla UserControl, związana jako DataTemplate.
public ICommand SelectViewFeedDataCommand
{
get
{
// Code to perform
}
}
ja zbadali to dość intensywnie, ale nie znalazłem odpowiedzi na jak skutecznie związać ICommand do ComboBoxItem.
Dostosowuję to z istniejącego kodu, który użył zestawu radiobuttons i związanych z nimi poleceń, co odbywa się dość łatwo. Czy nie ma prostego sposobu na zrobienie tego z ComboBox?
Dzięki.
Co o wiązaniu 'własność ComboBox.SelectedItem' do czegoś, a potem robi logiki poleceń w' imprezy PropertyChanged' swojej własności SelectedComboBoxItem? – Rachel