在WPF Combobox中查找ComboBoxItem的索引

时间:2013-10-16 10:23:07

标签: c# wpf combobox

我在我的ComboBox中添加了SelectionChanged事件,我需要找到上一个选定项目的索引。但是,我找不到一种简单的方法来查找项目索引。我有:

// In the XAML file
<ComboBox Name="myCombobox" ItemsSource="{Binding MyCollectionView}" SelectionChanged="myCombobox_SelectionChanged" />


// In the XAML.cs file
public void myCombobox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    ComboBoxItem item = e.RemovedItems[0];
    if (e.AddedItems.Count > 0)
    {
        ComboBoxItem item = e.RemovedItems[0];
        if (item != null)
            int index = /* Find index of this item! */;
    }
}

在这里检索正确索引的最简单方法是什么?为什么ComboBoxItem只有Index属性?

1 个答案:

答案 0 :(得分:3)

你可以尝试这样的事情:

Combobox comboBox = sender as ComboBox;

 if (e.AddedItems.Count > 0)
    {
        ComboBoxItem item = e.RemovedItems[0];
        if (item != null)
            int index = combobox.Items.IndexOf(item);
    }