カスタムチェックボックスを簡単に作成しようとしています。チェックされた状態で、すべてのチェックボックスの上に画像を描画したい。すべてのチェックボックスに対して単一のイベント ハンドラーを作成するにはどうすればよいですか? 多くのチェックボックスがあり、それぞれのイベント ハンドラーを記述したくありません。
private void checkbox1_Paint(object sender, PaintEventArgs e)
{
Rectangle rect = new Rectangle(0, 0, 16, 16);
if (checkbox1.Checked)
{
e.Graphics.DrawImage(Properties.Resources.checkbox_checked, rect);
}
else
{
e.Graphics.DrawImage(Properties.Resources.checkbox_unchecked, rect);
}
}
private void checkbox2_Paint(object sender, PaintEventArgs e)
{
Rectangle rect = new Rectangle(0, 0, 16, 16);
if (checkbox2.Checked)
{
e.Graphics.DrawImage(Properties.Resources.checkbox_checked, rect);
}
else
{
e.Graphics.DrawImage(Properties.Resources.checkbox_unchecked, rect);
}
}
// etc...