ListBox不会触发MouseRightButtonUp事件

时间:2011-06-13 13:21:32

标签: silverlight silverlight-4.0

ListBox是否有任何特殊原因无法触发MouseRightButtonUp事件?

<ListBox x:Name="Users"
             ItemsSource="{Binding Users}"
             MouseRightButtonUp="MouseRightButtonUp" />

2 个答案:

答案 0 :(得分:0)

如果未在控件中触发路由事件,则意味着可视树中更深层的控件通过将事件标记为在事件链中处理来“吃掉”事件。在你的情况下,我怀疑是ListBox中的ScrollViewer正在吃这个事件。

答案 1 :(得分:0)

这里是我之前评论的答案;)

我想问题就像Murven说的那样,RightButtonUp事件由另一个控件处理,而不是到达ListBox。但是如果添加一个MouseRightButtonDownHandler并在此处理程序中设置e.handled = true,则会调用MouseRightButtonUpHandler ...

XAML:

<ListBox x:Name="Users" MouseRightButtonDown="downHandler" MouseRightButtonUp="upHandler"...>

代码背后:

private void downHandler(object sender, MouseButtonEventArgs e) { e.Handled = true; }

BR,

TJ