0

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

4

1 回答 1

1

TextBox 控件处理鼠标按下事件并阻止它们在可视树上冒泡。(如果您使用的是画布,但冒泡事件无济于事)

您可以通过代码将自己的事件处理程序添加到鼠标事件中,例如

txtbox.AddHandler(TextBox.MouseLeftButtonDownEvent, 
                  new MouseButtonEventHandler(<your handler>), true);

您的处理程序具有签名的位置:

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

        }

让我知道您的具体情况是否需要更多信息。

于 2013-03-27T18:20:06.580 回答