我所追求的功能是在多选模式下检查列表框和列表框之间的交叉。
对于列表框项目A和B
A然后B导致单个选择从A移动到B.
然后按住Control键并单击B会导致A和B的多重选择。
(我想要的是):
我认为这很容易,但我无法理解。也许我错过了一些显而易见的事情,或者我的想法是错误的,并且没有人真的想要一个项目切换开/关的列表框。
答案 0 :(得分:1)
如果您将SelectionMode设置为MultiSimple,则可以进行控制点击多项选择并打开和关闭。
要使移动选择起作用,您可以处理SelectedIndexChanged事件并添加一些逻辑以在未按下控件时取消选择其他项目。如果我有更多的时间,我可以尝试为它创建一些基本代码,但这应该是一个开始的地方。
答案 1 :(得分:1)
如果您将ListBox.SelectionMode设置为MultiExtended并在进行选择时按住控件,则您已经拥有了所需的行为。
答案 2 :(得分:0)
如果我正确理解了您的问题,那么您想要一个ListBox
的{{1}},它可以使用SelectionMode.One
修饰符来切换与CTLR
和SelectionMode.MultiSimple
类似的选择。在我的答案下方,只需将SelectionMode.MultiExtented
设置为true。另外,它还提供了单击事件,当单击已选择的项目时也会触发该事件。
ToggleSingleSelection