WPF列表框:如何在列表顶部显示所选项目

时间:2014-01-18 20:55:58

标签: c# wpf listbox

比如说我在Item1到Item99之间的已检查ListBox中有100个项目。如果选择了Item20,Item30和Item31,我希望在列表顶部看到所选项目作为前3项,然后是剩余项目。请帮我解决这个问题?

由于 肉酱

1 个答案:

答案 0 :(得分:0)

因为我想如果你选择的东西,如果位置发生变化,尝试选择多个项目可能会有点困难,我建议你在松开焦点时移动它们。

类似以下的算法应该有效:

listbox_LostFocus()
{
    if (there are any selected items after the first unselected item)
      move them to immediately prior the first unselected item
}

可以通过调用Items.Remove(item)后跟Items.Insert(item, position)来进行移动。