当鼠标悬停在silverlight中的内部对象上时,不会触发父对象鼠标事件

时间:2013-03-27 17:24:34

标签: silverlight

我的XAML中有一个矩形作为文本框的容器(文本框显示在矩形上),我可以通过拖动来移动矩形(使用矩形对象的mousedown和mousemove事件),但是有一个问题文本框因为它覆盖了我的矩形的很大一部分,所以当用户点击鼠标(并尝试移动它)时,他们很有可能实际点击文本框,因此矩形鼠标事件不会启动而且没有任何工作! (即无法行动)。我怎样才能克服这个问题? (我使用SL 5& VS 2012)

1 个答案:

答案 0 :(得分:1)

TextBox控件处理鼠标按下事件并阻止它们冒泡可视树。 (如果你使用画布虽然冒泡事件无济于事)

您可以通过代码(例如

)将自己的事件处理程序添加到鼠标事件中
txtbox.AddHandler(TextBox.MouseLeftButtonDownEvent, 
                  new MouseButtonEventHandler(<your handler>), true);

你的处理程序有签名:

  private void <your handler>(object sender, MouseButtonEventArgs e)
        {

        }

请告诉我你的情况是否需要更多的东西。