【发布时间】:2011-01-10 05:40:15
【问题描述】:
我正在编写一个带有 ListBox 的 Windows Phone 7 应用程序。当 ListBox 中的项目被手指“点击”或“击中”时,捕获该项目的正确事件是什么?
我已经尝试过“SelectedIndexChanged”,但是当应用程序被 TombStoned 并且传入的索引为 0 时,它似乎会在 GoBack() 上触发(这看起来很奇怪)。
我目前正在使用 MouseUp,这似乎可以解决问题。但我不确定这是否正确。
注意:我发现单击返回时触发 SelectionChanged 的原因。当我的 Page 的构造函数被触发,并且我的 ListBox 的 ItemSouce 被设置(数据绑定)时,它将选择列表中的第一个项目并触发 SelectionChanved 事件。由于这不是由用户操作发起的,我通过简单地创建一个 IsLoaded 布尔值并将其设置为 true 来解决这个问题,然后在构造函数中设置 ItemSource 然后在事件中检查它。
【问题讨论】:
-
嗨 Omar,上面的线程涵盖了有关 MouseUp 的注意事项,并重复单击/点击相同的列表项。
-
... 还解决了人们通常在不先重置 SelectedIndex 的情况下使用 SelectedIndexChanged(重复按下不会触发)的问题。
标签: windows-phone-7 event-handling listbox