0
我正在使用FormBorderStyle自定義窗體是無。在表單中,我有一個停靠在表單頂部的面板。面板上有一些按鈕位於右側。表單上的繪畫後,兒童控件不重新繪製自己
我重寫了OnPaint爲窗體繪製邊框,當我調整窗體大小時,面板上的按鈕仍然位於它們的位置。我試圖使用form.Invalidate()但沒有任何反應。
對不起,但我不允許在這裏張貼圖片。
這形式
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
Rectangle borderRectangle = this.ClientRectangle;
borderRectangle.Inflate(-1, -1);
//ControlPaint.DrawBorder3D(e.Graphics, borderRectangle, Border3DStyle.RaisedOuter);
ControlPaint.DrawVisualStyleBorder(e.Graphics, borderRectangle);
}
protected override void OnResize(EventArgs e)
{
this.Invalidate(true);
}
的ResizeRedraw屬性設置爲true的形式構造解決了這個問題。 –