문제

Winforms 컨트롤을 위해 컨테이너가 컨트롤을 초기화 한 후 핸들러를 추가하고 싶습니다 (또는 부모가 포함 된 모든 컨트롤을 초기화 한 후에도 더 나은).

이유 : 사용자 정의 컨트롤에는 작업을 자동으로 트리거 할 수있는 옵션이 있습니다. 이 옵션이 처음 활성화되면 트리거해야합니다.

그러나이 시점에서 다른 속성 (예 : 이벤트 핸들러)은 아직 올바르게 연결되지 않았으므로 효과는 예상대로 아닙니다.

이게 가능해?

편집하다

나는 이것이 "약간 특이한"소리를 이해한다는 것을 이해하므로 명확히하고 싶습니다.

그것은 용 의도입니다 이 구성 요소: 대략 "새 문서를 자동으로 작성"하는 옵션을 추가합니다.

초기화 중 또는 초기화 중에 속성이 할당 된시기에 DocumentInfo 자체를 만들 수 있습니다. 그러나이 시점에서 나는 또한 UI를 업데이트해야한다고 말하기 위해 이벤트를 발사해야합니다 (보통 부모 양식). 이벤트는 아직 연결되지 않았거나 다른 컨트롤 Arestill이 초기화되지 않았기 때문에 부모 양식이 완전히 초기화 될 때까지 이벤트를 지연시키고 싶습니다.

도움이 되었습니까?

해결책

내가 아는 유일한 것은 컨트롤 내에서 직접 이것을 할 수있는 일은 onvisibleChanged를 무시하고 컨트롤이 처음 표시 될 때 당신의 행동을 처리하는 것입니다.

그러나 나는 이것에 대한 필요성을 다시 생각할 것이다. 이로 인해 표준 Windows 양식 컨트롤과 다르게 제어 할 수 있습니다. 비표준이 아닌 이벤트에 당신의 행동을 연결하려고 시도하는 것은 나에게 유지성과 유용성의 악몽처럼 보입니다 ...

다른 팁

양식의로드 이벤트까지 배선을 해보고 그곳에서 작업을 해보셨습니까? (양식을 보여줄 때마다 발사됩니다 ...)

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top