를 윈폼, 클릭했을 때,하지만 레이블에 클릭하지 않을 경우 이벤트가 발생됩니다 GameButton의 UserControl을 - 당신이 모두를 원한다. 이는 레이블 (컨트롤)이 배경 위에 있기 때문입니다. 따라서 클릭 이벤트에 레이블을 등록해야합니다. 이 작업은 디자이너에서 수동으로 수행하거나 페이지의 각 컨트롤에 대해 프로그래밍 방식으로 수행 할 수 있습니다. 당신은 UserControl을 모든 제어를 수행 할 경우
는 해당 UserControl의 OnLoad 이벤트에 이것을 넣고 당신은 모든 제어를 위해 같은 클릭 이벤트를 사용할 수 있습니다
foreach(Control c in this.Controls){
c.Click += new EventHandler(yourEvent_handler_click);
}
public void yourEvent_handler_click (object sender, EventArgs e){
//whatever you want your event handler to do
}
편집 : 가장 좋은 방법은을 만드는 것입니다 사용자 정의 컨트롤에서 이벤트 처리기 속성을 클릭합니다. 이렇게하면 사용자 컨트롤에 클릭 이벤트를 추가/제거 할 때마다 사용자 컨트롤 내의 모든 컨트롤에 자동으로 추가/제거됩니다. 이 도움이
희망 :
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;
}
}
}
이것은 또 다른 post에 따라입니다!
UI 프레임 워크 (윈폼은, WPF는 웹 양식, MVC)? –
죄송합니다, – Oztaco
는 또한 태그를 포함하여 피해주십시오 윈폼 (예 : visual-studio) –