Robiłem tak, ale nie działa to tak jak ja chce. Ja potrzebuje "wychwycić" zdarzenie kliknięcia na item w comboboxie, a później sprawdzić, który to i wykonać stosowne akcje.
PS: Właściwie to potrzebuje tylko akcji typu "Click" na combobox, po zaznaczeniu. Potem już mogę sobie sprawdzać, który jest zaznaczony normalnie bindując.
W code-behind, byłoby tak:
private void Menu_comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
if(item.IsSelected){//cośtam}
}
i w xaml tylko:
SelectionChanged="Menu_comboBox_SelectionChanged"
Taki efekt uzyskasz bardzo łatwo bez korzystania z MVVM Light :
<ComboBox x:Name="Menu_comboBox" Height="50" >
<ComboBoxItem Name="ComboBoxItem1" Content="a" IsSelected="{Binding IsSelectedA}"/>
<ComboBoxItem Name="ComboBoxItem2" Content="b" IsSelected="{Binding IsSelectedB}"/>
<ComboBoxItem Name="ComboBoxItem3" Content="c" IsSelected="{Binding IsSelectedC}"/>
</ComboBox>
public bool IsSelectedA
{
set{if (value == true) MessageBox.Show("A"); OnPropertyChange();}
}
public bool IsSelectedB
{
set{ if (value == true) MessageBox.Show("B"); OnPropertyChange();}
}
public bool IsSelectedC
{
set{ if (value == true) MessageBox.Show("C"); OnPropertyChange(); }
}