Windows Forms 폼에 많은 이벤트가 있습니다. 피드백 레이블이 있는데 feedbaxk.Text = ""; 각 이벤트가 시작될 때.Windows Forms의 PageLoad에 대한 대체물
ASP.NET에서 나는 모든 포스트 백에서 실행되는 page_load
이벤트에서 한 번만 쓰려고했지만 Form Load는 한 번만 발생합니다.
- :
나는 두 개의 가장 가까운 답 다음 내 질문의 제목으로 검색을 시도하고 발견
관련 친구가 있습니다. 그러나 나는 이것들과 더 많은 것들로부터 만족스러운 대답을 얻을 수 없었다.
Windows Forms에서 이벤트가 발생하는 것을 어떻게 감지 할 수 있습니까?
업데이트 : 그것을 다른 방법을 인터넷 검색으로, 나는 다른 링크로 연결되어 가까운 링크, Find all event handlers for a Windows Forms control in .NET 및 Is it possible to “steal” an event handler from one control and give it to another?을 발견했다. 이들을보고 난 후에 가능하다고 생각합니다.
- Form_Load의 끝에서 모든 이벤트의 목록을 얻을 수 있습니다. (이후에는 더 이상 이벤트를 추가하지 않습니다.) 그런 다음 모든 이벤트에 약간의 공통 기능 (예 : 레이블 텍스트 변경)을 추가하십시오.
- 부모 이벤트에서 모든 이벤트를 상속하고 해당 이벤트에 원하는 기능을 추가 한 다음 각 이벤트에 특정 기능을 추가 (재 지정) 할 수 있습니다.
Form 윈도우 핸들에 도착하는 기본 Windows 메시지 때문에 많은 이벤트가 발생합니다 (일부는 아님). 따라서 보호 된 Form.WndProc 메서드를 재정의하고 일부 포괄 시스템을 작성하려고 할 수 있습니다. 당신이 궁극적으로 성취하고자하는 것에 따라 그것은 시작 일 수 있습니다. –
@SimonMourier가 말한 두 번째 부분. WndProc에 연결하면 필요한만큼 충분합니다. –
SimonMourier 지침을 작성 중입니다. @Lief! 그것은 단지 버튼 클릭에 관한 것이 아니라 무엇이든 추가 한 모든 사건에 관한 것입니다. textbox_leave a combobox_selectedIndex_Changed textbox_backgroudColorChanged 등등 ... – Sami