【发布时间】:2010-09-22 21:14:22
【问题描述】:
如果我在 ListBox 的一个项目上按下鼠标,然后将鼠标移动到另一个项目上而不释放鼠标按钮,则选择会自动更改为鼠标下方的元素。
是否有可能禁用此行为,以便仅当鼠标直接在项目上按下时才会更改选择(我需要这个来启动具有多个选定项目的拖放,默认行为有一个丑陋的一面 -效果)?
或者,是否有一个很好的拖放示例,可以解决在使用 ListBox 实现多个项目的拖放时出现的所有障碍。
【问题讨论】:
如果我在 ListBox 的一个项目上按下鼠标,然后将鼠标移动到另一个项目上而不释放鼠标按钮,则选择会自动更改为鼠标下方的元素。
是否有可能禁用此行为,以便仅当鼠标直接在项目上按下时才会更改选择(我需要这个来启动具有多个选定项目的拖放,默认行为有一个丑陋的一面 -效果)?
或者,是否有一个很好的拖放示例,可以解决在使用 ListBox 实现多个项目的拖放时出现的所有障碍。
【问题讨论】:
这是列表框的默认行为,无法更改。
您应该尝试 2 个技巧: 1.订阅预览鼠标向上并将handled标记为true。 2.继承items控件,实现自己的选择器。
【讨论】: