有没有办法在调整大小结束中调整Winform
窗口的大小?
这意味着只要点击鼠标就会看到线条,只有当我离开鼠标时(调整大小结束)窗口才会在屏幕上调整大小。
答案 0 :(得分:2)
您需要使用DrawReversibleFrame。需要禁用默认大小调整(FormBorderStyle = FixedSingle)。
基本逻辑是 -
MouseDown
- 开始跟踪
MouseMove
- 绘制可逆框架
MouseUp
- 停止绘制可逆帧。调整表格大小。
幸运的是,这个MSDN post有这个工作代码。我为你做了一个工作样本。 http://www.mediafire.com/download/427g2h2ajm5z62m/ResizeFrame.zip
您需要对此进行调整,以便仅在用户“MouseDown”时调整“表单大小调整”。靠近边境。
答案 1 :(得分:2)
如果只包含所包含的控件然后调整(以及表单本身 - 立即),请使用表单的ResizeEnd事件。
(我假设是这种情况,因为通常没有理由延迟Form的调整大小本身,而是包含控件',因为他们的调整大小可能是“昂贵的”。) < / p>
注意:“用户移动表单后也会生成ResizeEnd事件”。
答案 2 :(得分:0)
尝试一下。
protected override void OnResizeBegin(EventArgs e) {
SuspendLayout();
base.OnResizeBegin(e);
}
protected override void OnResizeEnd(EventArgs e) {
ResumeLayout();
base.OnResizeEnd(e);
}