是否可以从Windows Presentation Foundation中的Code-Behind更改所选的ListBoxItem

实际上,这是一个非常简单的任务,我有一个NextPrevious按钮,它们表示ListBox中的下一个和上一个项目。但是,myListBox.items当然是我存储在ListBox中的对象的表示形式。

因此,如何获取ListBoxItem来设置IsSelected属性?

最佳答案

在您的情况下,可能更容易做,因为您正在执行Previous和Next,只需增加SelectedIndex:

//Increment
if(myListBox.SelectedIndex < myListBox.Items.Count -1)
     myListBox.SelectedIndex++;

//Decrement
if(myListBox.SelectedIndex > 0)
     myListBox.SelectedIndex--;


如果您确实想要获取构成已抛出ListBox的对象的ListBoxItem,则可以执行以下操作:

ListBoxItem item = myListBox.ItemContainerGenerator.ContainerFromItem(objectIWantToSelect);
item.IsSelected = true;

10-06 12:16