아래의 방법들은 모든 콘트롤에 대해서 지정하는 방법으로 단일 콘트롤에 클릭 이벤트를 주려면 약간의 수정을 해야한다
Click 이벤트에 새로 할당하는 방법
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
public new event EventHandler Click
{
add
{
base.Click += value;
foreach (Control control in Controls)
{
control.Click += value;
}
}
remove
{
base.Click -= value;
foreach (Control control in Controls)
{
control.Click -= value;
}
}
}
}
Click 이라는 이름 말고 다른 이름으로 할당하는 방법
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
[Description("유저콘트롤 클릭이벤트"), Category("내가 만든 이벤트")]
public event EventHandler OnUserControlButtonClicked;
private void UserControl1_Load(object sender, EventArgs e)
{
foreach (Control c in this.Controls)
{
c.Click += OnUserControlButtonClicked;
}
}
}