나는 누군가가 요소를 클릭 한 후 물론바로
something_Click(object sender, EventArgs e)
{
code
}
...
그것은 실행하는 작업 방법을 가지고있다. 필요한 것은 요소가 화면에 나타난 직후에이 메서드를 실행하는 것입니다 (StripStatusLabel
). 코드 시작 부분에 메서드 호출을 추가하려고 시도했지만 아무것도 수행하지 않았습니다.
나는 누군가가 요소를 클릭 한 후 물론바로
something_Click(object sender, EventArgs e)
{
code
}
...
그것은 실행하는 작업 방법을 가지고있다. 필요한 것은 요소가 화면에 나타난 직후에이 메서드를 실행하는 것입니다 (StripStatusLabel
). 코드 시작 부분에 메서드 호출을 추가하려고 시도했지만 아무것도 수행하지 않았습니다.
Form.Load
이벤트 핸들러에서 버튼으로 Button.PerformClick
으로 전화 할 수 있습니다.
논리를 자체 메서드로 옮기고 단추 처리기와 Load
이벤트에서 해당 메서드를 호출하는 것이 더 명확하므로 고려해 볼 수 있습니다. (이것은 분명히 "버튼 클릭"이상으로 트리거되는 코드입니다).
대상으로하는 프레임 워크 (WPF와 Winforms)에 따라 Load 이벤트를 대신 처리 할 수 있습니다. 요소가 화면에 나타날 때 트리거됩니다.
일반적으로 사용자가 보낸 양식 이벤트를 발생시키는 것은 좋지 않습니다. 이 의미에서 클릭을 "속일"려고합니다. 미래의 디버깅 또는 프로젝트를 상속받을 동료를 생각해보십시오. 코드를 검사 할 때 something_Click은 "무언가"에 클릭이있을 때만 해고 될 것으로 예상됩니다.
더 나은 해결책은 "코드"부분을 귀하의 싹둑에 넣고 그 이름이 실제로하는 것을 반영하는 방법에 넣는 것입니다.
다른 지역에서는이 방법을 사용할 수 있습니다. 클릭, 하중, 어디서든 발사하십시오.
something_Click(object sender, EventArgs e)
{
DoStuff();
}
OnAppearToScreen()
{
DoStuff();
}
DoStuff()
{
//code that actually does stuff
}
은 나중에, 당신은 "물건"이 개체에 수행 할 때 확인하고자 할 때, 당신은 쉽게 코드 검사를 통해서 알 수 있습니다.