次のように、申請書の1つでラベルにカスタム境界線を追加しました。
private void ColorMe(PaintEventArgs e)
{
Color myColor = Color.FromArgb(104, 195, 198);
Pen myPen = new Pen(myColor, 1);
e.Graphics.DrawRectangle(myPen,
e.ClipRectangle.Left,
e.ClipRectangle.Top,
e.ClipRectangle.Width - 1,
e.ClipRectangle.Height - 1);
base.OnPaint(e);
}
private void lblDisbs_Paint(object sender, PaintEventArgs e)
{
ColorMe(e);
}
これはうまく機能します。ColorMe(e)を各ラベルのペイントイベントに配置するだけです。
ただし、アプリケーション全体のすべてのフォームでこのメソッドを使用したいと思います。ColorMe()メソッドをクラスに入れて、複数のフォームからそのように呼び出すことを試みましたが、「baseにはOnPaintイベントがありません」と言って機能しません。
このメソッドをアプリケーション全体で利用できるようにするにはどうすればよいですか?