5

我有一个ItemViewModel绑定到LongListSelector.

很简单,当用户点击列表中的某个项目时,我需要检索所选项目的索引号以供将来使用。(0 是列表中的第一个,1 是第二个,等等)

因此,正如这可能会检索所选项目的某个属性:

string whateverProperty = (MyLongListSelector.SelectedItem as ItemViewModel).WhateverProperty;

我需要这样的东西(显然是编造的代码):

int indexNumber = (MyLongListSelector.SelectedItem as ItemViewModel).GetSelectedIndex();

我认为该SelectedIndex属性是我需要的东西,但我不知道如何检索它。

谢谢!

编辑:解决了!以下内容正是我想要的:

 int selectedIndex = App.ViewModel.Items.IndexOf(MainLongListSelector.SelectedItem as ItemViewModel);
4

1 回答 1

1

我有同样的问题。您需要使用 ItemSource 来检索索引。它应该与您的数据模板索引相匹配。

int selectedIndex = selector.ItemsSource.IndexOf(selector.SelectedItem as ItemViewModel);

选择器引用 LongListSelector 对象发送者。希望这可以帮助!

于 2013-10-15T20:41:21.420 回答