当您最大化表单或取消最大化表单时是否会触发一个事件?
在你说之前Resize
or SizeChanged
:只有在以下情况下才会被解雇:Size
实际上发生了变化。如果您的窗口恰好与最大化窗口大小相同,则它们不会触发。地点看起来是下一个最佳选择,但这又感觉像是在赌巧合。
令人惊讶的是没有人提到内置的 .NET 方法。
这样您就不需要重写窗口消息处理处理程序。
它甚至捕获由双击窗口标题栏引起的最大化/恢复事件,这是 WndProc 方法所做的not.
复制此内容并将其链接到表单上的“调整大小”事件处理程序。
FormWindowState LastWindowState = FormWindowState.Minimized;
private void Form1_Resize(object sender, EventArgs e) {
// When window state changes
if (WindowState != LastWindowState) {
LastWindowState = WindowState;
if (WindowState == FormWindowState.Maximized) {
// Maximized!
}
if (WindowState == FormWindowState.Normal) {
// Restored!
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)