编程方式更改所选择的ListBoxItem
-
10-07-2019 - |
题
是否有可能改变选择 ListBoxItem
从代码隐藏在Windows介绍基金会?
这是一个相当简单的任务真的,我有一个 Next
和 Previous
按钮,它们代表一个和下一个项目 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;
其他提示
你有各种选项:
- 使用SelectedItem或属性财产列表框控制
- 如果你有ListBoxItem和没有父母列表框,使用获取定.ItemsControlFromItemContainer(listboxitem)检索的父母列表框,(和使用先前性质)
- 使用ICollectionView接口(CollectionViewSource.GetDefaultView)及其方法(MoveCurrentToNext,MoveCurrentToPrevious)
不隶属于 StackOverflow