2011-08-17 18 views
1

我有一个可以编辑的列表框。一旦该列表框中的项目被编辑并保存,新编辑的项目将显示在列表中,但其位置会发生变化。我希望能够在更改位置后选择或突出显示该项目。我可以得到它的新索引,但是我无法找到一种方法,在列表框中的psoiton更改之后重新选择它们!如何使用c编程地使用其索引来选择列表框中的项目#

这里任何帮助将要被选中只是你的项目之前,如果不胜感激 感谢

+0

您是否尝试通过设置属性'ListBox.SelectedItem'或'ListBox.SelectedIndex'来选择项目? – Stephan

+0

是的。它现在的作品:) – PuZZled

回答

2
ListBox.SelectedIndex = newPosition; 

ListBox.SelectedIndices.Add(newPosition); 

与可选SelectedIndices.Clear()。

+0

感谢您的建议。我不知道我为什么忘了!我仍然对所有这些东西都陌生! – PuZZled

+1

'SelectedIndices'在WPF'ListBox'es中不存在。 – Cameron

0

我假设itemssource是某种集合。为什么你不使用Mode = TwoWay的SelectedItem属性来从你的C#代码中选择你想要的项目?

<ListBox ItemsSource="{Binding Path=YourItemsCollection}" 
     SelectedItem="{Binding Path=MySelectedItem, Mode=TwoWay}" /> 

另一种方法是使用ICollectionView MoveCurrentTo方法。你所要做的就是创建一个带有CollectionViewSource.GetDefaultView(this.YourItemsCollection)的ICollectionView。如果采用这种方式,则不需要绑定到SelectedItem,但必须为列表框设置IsSynchronizedWithCurrentItem = true。

+0

感谢您的回复。我只是遵循弗拉基米尔的建议和事情:) – PuZZled

+0

np :)因为mvvm和wpf绑定我没有使用索引的东西了;) – blindmeis

相关问题