2009-06-03 2 views

답변

0

Winforms 컨트롤은 asp.net 웹 폼 컨트롤과 동일한 의미로 수명주기가 없습니다. 사용자가 UI 이벤트를 발생 시키면 UI 이벤트가 발생합니다.

8

정말 인생의시기에 대해 이야기하고 있습니다. 로드에서의 추측을 감안할 때 생성 /로드 중에 말합니다. 이 목록은 내가 테스트를위한 설정 (매여 이벤트 리스너의 수를 콘솔에 이벤트 이름 인쇄) 간단한 UserControl을에서 해고 된 순서에 몇 가지 이벤트를 보여줍니다

HandleCreated 
Load 
Layout 
VisibleChanged 
Paint 

주 그 레이아웃 , VisibleChanged 및 Paint는 컨트롤 작성과 관련이 없습니다. 레이아웃 및 특히 페인트는 통제 기간 동안 여러 차례 제기 될 수 있습니다. Visible 속성 값이 변경 될 때마다 발생하는 VisibleChanged도 마찬가지입니다.

+1

+1 - 너는 나를 때렸다. 나는 똑같은 결과를 얻었습니다. - 페인트는 마지막입니다. 또한 CreateControl은 HandleCreated와 Load 사이에서 발생하고 PaintBackground는 Paint 전에 발생합니다. –

+0

@ 존 B : PaintBackground 이벤트가 없지만 보호 된 OnPaintBackground 메서드가 있습니다.이 메서드는 표준 이벤트 발생 메서드와 매우 비슷하지만 이벤트를 발생시키지 않습니다. 어느 쪽이든 CreateControl과 OnPaintBackground는 외부 코드 (컨트롤을 호스팅하는 폼 등)가 아닌 사용자 정의 컨트롤 내에서만 사용할 수 있습니다. –

+0

@ 존 B : 언급하는 것을 잊었다; 그 두 가지 방법으로 좋은 점은 여전히! :) –

관련 문제