我正在开发一个程序,该程序包含(除其他外)一个 WPF 窗口,我正在使用下一个代码在 MouseDoubleClick 事件中将其最大化:
this.WindowStyle = WindowStyle.None;
this.WindowState = WindowState.Maximized;
this.Topmost = true;
现在,我想要做的是,当窗口最大化并且鼠标退出屏幕(转到屏幕底部直到它退出屏幕)时,一个新窗口出现在屏幕底部(WPF 或 WindowsForm)它将包含几个东西(按钮、滚动条等),并且只有当鼠标在它上面时才会激活(就像在 BSplayer 中一样)。我的问题是如何做到这一点?我真的是 WPF 的初学者,我不知道 XAML,我更愿意尽可能多地使用 C# 代码。那么:我如何知道鼠标何时离开屏幕以及如何使该窗口出现在屏幕底部(不最小化或对原始窗口执行任何其他操作)?我尝试使用 this.MouseLeave 但是当窗口最大化时它不起作用。
如果我在这里问这个问题,我会借此机会问另外两件事:
- 当 WPF 窗口最大化并且鼠标未移动超过 5 秒时,我希望鼠标被隐藏并仅在鼠标移动时再次可见。我该怎么做呢 ?
- 当 WPF 窗口未最大化时,我希望屏幕的边框非常小,几乎不可见(没有最小化、关闭或其他按钮)。我正在使用 this.WindowStyle = System.Windows.WindowStyle.ToolWindow 但它仍然在那里留下退出/关闭按钮;如果我使用 this.WindowStyle = System.Windows.WindowStyle.None 它看起来很完美,但是我无法移动窗口。无论如何,我在那里使用 WindowStyle.None 使窗口可移动?最好,当我在屏幕内部按住鼠标时,我希望能够在我的屏幕上拖动 WPF 窗口。
这些问题真的需要帮助。这是我正在从事的一个非常重要的项目。