Wpf 当组合框位于ListView单元格中时,如何通过委托命令处理SelectionChanged事件

Wpf 当组合框位于ListView单元格中时,如何通过委托命令处理SelectionChanged事件,wpf,combobox,command,selectedindexchanged,Wpf,Combobox,Command,Selectedindexchanged,“”,此页显示如何扩展组合框以支持命令,但它没有提供映射到组合框的SelectedIndexChanged事件的委托命令的圆顶。现在,我面临的问题是如何处理combobox SelectedIndexChanged事件,就像它是一次性combobox情况一样: <ComboBox SelectionChanged="ComboBox_SelectionChanged"></ComboBox> private void ComboBox_SelectionChanged(o

“”,此页显示如何扩展组合框以支持命令,但它没有提供映射到组合框的SelectedIndexChanged事件的委托命令的圆顶。现在,我面临的问题是如何处理combobox SelectedIndexChanged事件,就像它是一次性combobox情况一样:

<ComboBox SelectionChanged="ComboBox_SelectionChanged"></ComboBox>
private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    var combobox = sender as ComboBox;
    if (combobox.SelectedIndex == 0)
    { 
        //todo:
    }
}
我想这样定义方法:

private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    var combobox = sender as ComboBox;
    if (combobox.SelectedIndex == 0)
    { 
        //todo:
    }
}
但是如何将其绑定到委托命令ChangeStartModeCmd

ChangeStartModeCmd = new DelegateCommand(ChangeStartMode( 
        /*what should I pass for the method?*/));

您可能不需要
CommandSupportedCombobox
,因为您可以附加组合框的
SelectedItem
属性,并在ViewModel中的
setter
中调用所需的函数

Xaml
ChangeStartModeCmd = new DelegateCommand(ChangeStartMode);
private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    var combobox = sender as ComboBox;
    if (combobox.SelectedIndex == 0)
    { 
        //todo:
    }
}
ChangeStartModeCmd = new DelegateCommand(ChangeStartMode( 
        /*what should I pass for the method?*/));
<ComboBox SelectedItem="{Binding MyItem,Mode=TwoWay}" />
 public MyItem
 {
    get {return myItem;}
    set
    {
        myItem=value;
        OnPropertyChanged("MyItem");  implement INotifyPropertyChanged
        MyFavFunction(); // Function to be called
    }
 }