좋아, 이것은 내가 아침마다 문제를 겪고있는 정말 짜증나는 버그 다..net 페이지 이벤트 실행 순서 변경
나는 호출 페이지 onload에 의해 설정되고 Viewstate에 저장되는 속성을 가진 많은 프로젝트에서 사용하는 사용자 지정 컨트롤이 있습니다. 컨트롤은 사용자 지정 컨트롤의 CreateChildControls() 메서드에서 속성을 사용하여 하위 컨트롤을 설정합니다.
일반적으로 포스트 백에서 Page_Load 이벤트가 발생하면 페이지 컨트롤의 CreateChildControls 메서드가 실행됩니다.
사이트에 로그인 시스템 (사용자 지정 멤버 자격 공급자)이 있고 사용자가 로그인하면 CreateChildControls() 메서드가 먼저 발생하여 Page_Load가 발생하여 컨트롤 속성이 잘못 설정됩니다 이전 게시물에서)
어떻게 다른 순서로 이벤트를 실행할 수 있습니까? 모든 페이지 이벤트가 무엇이든지 상관없이 같은 순서로 발생했다고 생각했는데 로그인 한 상태가 어떻게 변경되는지 알지 못합니다.
업데이트 : 내가 EnsureChildControls()를 호출하지 않아 문제가있는 것 같지만 어디에서 호출해야하는지 모르겠습니다. EnsureChildControls()를 호출해야 할 때 자식 컨트롤을 설정하는 데 사용되는 컨트롤에 몇 가지 속성이 설정되면 EnsureChildControls()가 수행하는 작업을 완전히 이해하지 못했을 것입니다.
OK EnsureChildControls()를 어디에서 호출해야하는지 명확하지 않습니다. 문제는 페이지로드 이벤트에 속성이 설정되어 있지만 이전의 포스트 백에서 속성 값을 사용하여 팝업에서 CreateChildControls()가 이미 호출 된 경우 사용되지 않습니다. EnsureChildControls()를 호출해야하는시기는 무엇입니까? – Sheff