我有一个包含文本框的窗口。

在窗口和文本框上,我添加了一个previewmousedoubleclichandler。

处理程序在窗口中:

private void PreviewMouseDoubleClickHandler(object sender, MouseButtonEventArgs e)
{
    Debug.WriteLine("handler in the window");
    e.Handled = true;
}
.

处理程序在文本框中:

private void PreviewMouseDoubleClickHandler(object sender, MouseButtonEventArgs e)
{
    Debug.WriteLine("handler in the textBox");
    e.Handled = true;
}
.

现在,当我双击文本框时,我希望先进入窗口的处理程序,打印调试行,然后处理事件,然后再多了。我认为TextBox的处理程序不会在窗口处理的情况下解雇。

这不像这样工作:我得到两个处理程序触发。

奇怪的是:它与previewmousedown事件正常工作。如果我完全相同,但使用预览器制革,我得到了我预期的行为,即:窗口处理鼠标,没有解雇TextBox的处理程序。

为什么这不适用于DoubleClick事件?难道我做错了什么?它应该这样工作吗? DoubleClick事件是以不同的方式管理,防止我使用隧道的优势?

有帮助吗?
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top