窗口规范化时不触发 MouseUp 事件,仅在最大化窗口上触发



正如标题所说...

我得到了一个矩形,用作自定义窗口的标题栏。我想向所述矩形上的 mouseUp 事件添加一个处理程序。我做了。。。但是,该事件仅在窗口最大化时触发,而从不在规范化时触发。

我尝试将显示的处理程序附加到矩形。鼠标向上,矩形。鼠标左按钮向上和矩形。预览鼠标左按钮向上。使用 MouseUp 和 PreviewMouseUp,右键触发事件,而左按钮不触发事件。

private void rctHeader_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
mRestoreIfMove = false;
POINT lMousePosition;
if (GetCursorPos(out lMousePosition) && lMousePosition.Y <= 10
&& WindowState != WindowState.Maximized)
{
WindowState = WindowState.Maximized;
}
}

我在mRestoreIfMove行上有一个断点,它只会在mouseUp上的最大化窗口中被命中。单击鼠标在规范化窗口中不执行任何操作。

已求解:

MouseDown 处理程序称为 DragMove(); 在最后。由于某种原因,在 DragMove 之后,mouseUp 事件不会触发。

抱歉,我也应该包含 mouseUp 事件代码。

最新更新