Silverlight中绑定了MouseLeftButtonDown事件,但MouseLeftButtonDown事件却没有触发。
出现这样的原因主要是因为MouseLeftButtonDown事件是一个RoutedEvent , 在routing过程中被标记为handled, 因此控件不会再抛出该事件,因此你的事件处理方法也无法做出响应。
使用UIElement.AddHandler 方法指定已经被handled的事件。
<UserControl name ="uc" MouseLeftButtonDown = "uc_MouseLeftButtonDown" />
uc.AddHandler(MouseLeftButtonDownEvent, new MouseButtonEventHandler(uc_MouseLeftButtonDown), true);
void uc_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
}
这样就可以解决问题了。