我有一个绑定到ListView ItemsSource属性的CollectionView。
<ListView x:Name="ExampleView"
ItemsSource="{Binding CollectionView}"
IsSynchronizedWithCurrentItem="True">...</ListView>
是否可以从CollectionViewSource获取项目的索引?
CollectionViewSource.GetDefaultView(ObservableCollection);
下面我说明了问题。
当选择CollectionView中的项目C时,我希望索引值为2而不是0.这可能吗?
非常感谢任何帮助。谢谢!
答案 0 :(得分:1)
这对我有用。正如您的代码所示,它假设您要过滤的视图是此ObservableCollection
的默认视图。
var vw = CollectionViewSource.GetDefaultView(MyObservableCollection);
int index = MyObservableCollection.IndexOf(vw.CurrentItem);
当然,您也可以将ListBox.SelectedItem
绑定到viewmodel上的SelectedItem
属性,并获取该索引。