【发布时间】:2011-07-22 19:51:59
【问题描述】:
我看到过有关 WPF 的类似问题,但建议的解决方案似乎都不适用于 Windows Phone 7。
基本上,我有一个列表框,行为需要在其中 1)当用户点击列表中的项目时,它被选中。 2)当用户点击任何其他项目时,第一个被取消选择并且被点击的项目被选中(到目前为止这只是正常的单选列表框行为) 3)当用户点击一个已经选择的项目时,该项目“取消选择”(这样就没有选择的项目了)。
拦截 MouseLeftButtonDown 事件并清除选择当然很容易,但 ui 系统似乎继续处理选项卡并转身重新选择我刚刚取消选择的项目。
起初,我认为绑定可能是问题,并且列表项+被绑定到 observableCollection,但“selectedItem”或“selectedIndex”根本没有绑定。
我尝试将事件 args 处理属性设置为 true:
e.Handled = true
但没有变化。
有什么想法吗?
【问题讨论】:
-
您有什么理由不使用 listBox_SelectionChanged?
-
我是(出于其他原因),但这不是问题所在。我需要的是当您单击选定的项目时,它会被取消选中。 SelectionChange 不会告诉你这些。
标签: windows-phone-7 listbox selection