FormBorderStyle が none のカスタム フォームを作成しています。フォームでは、フォームの上部にパネルがドッキングされています。パネルには、いくつかのボタンが右側にドッキングされています。
フォームの境界線を描画するために 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);
}