세션 객체를 사용하여 사용자 작업을 기반으로 성공/오류 메시지를 저장하고 있습니다.MasterPage Page_Load가 Grid_ItemCommand 앞에 나타납니다.
각 포스트 백에서 메시지는 ItemCommend에 설정되고 마스터 페이지의 Page_Load에서 검색됩니다. 일단 검색되면 메시지가 세션에서 삭제됩니다.
문제는 ItemCommand가 호출되기 전에 마스터 페이지의 Page_Load가 호출되어 다음 새로 고침 또는 다시 게시 때까지 메시지가 표시되지 않는다는 것입니다.
이 상황은 일반적으로 어떻게 처리됩니까? 우리가 코딩 할 수있는 다른 이벤트가 있습니까?
감사합니다. 메시지를 표시하기 위해 MasterPage를 사용하기 때문에 그 이벤트가 없습니다. 페이지 클래스 만 않습니다. 그래서'this.Page.LoadComplete + = new System.EventHandler (Page_LoadComplete);를 추가하려고 시도했다.''this'는 MasterPage이다. 이제 문제는 이벤트 핸들러가 모든 Page_LoadComplete 이벤트의 추가 사본을 계속 연결하는 것입니다. –
빠른 해결 방법은'this.Page.LoadComplete - = new System.EventHandler (Page_LoadComplete);를 사용하고'this.Page.LoadComplete + = new System.EventHandler (Page_LoadComplete);를 사용하는 것입니다. 더 좋은 방법이 있습니까? 마스터 페이지의 코드 뒤에 ASPX로 이벤트를 선언하는 방법이 있습니까? –
그런 다음 마스터 페이지의 PreRender 이벤트를 사용해보십시오. 나는 그것이 당신을 위해 일해야한다고 생각합니다. 마스터 페이지에 대해 미리 정의 된 이벤트입니다. 콘텐츠 페이지로드 및 콘텐츠 페이지 프리 렌더 후에 발생합니다. –