ASP.NET 마스터 및 콘텐츠 페이지의 이벤트

Visual Studio 2010

업데이트: 2007년 11월

마스터 페이지와 콘텐츠 페이지 모두에 컨트롤의 이벤트 처리기가 포함될 수 있습니다. 컨트롤 이벤트는 로컬로 처리됩니다. 즉, 콘텐츠 페이지의 컨트롤은 콘텐츠 페이지의 이벤트를 발생시키고 마스터 페이지의 컨트롤은 마스터 페이지의 이벤트를 발생시킵니다. 컨트롤 이벤트를 콘텐츠 페이지에서 마스터 페이지로 보낼 수는 없습니다. 마찬가지로, 마스터 페이지 컨트롤에서 발생한 이벤트를 콘텐츠 페이지에서 처리할 수 없습니다.

일부 경우에는 콘텐츠 페이지와 마스터 페이지 모두에서 동일한 이벤트가 발생합니다. 예를 들어, InitLoad 이벤트는 두 페이지 모두에서 발생합니다. 초기화 이벤트는 가장 안쪽 컨트롤에서 가장 바깥쪽 컨트롤의 순서로 발생하고 다른 모든 이벤트는 가장 바깥쪽 컨트롤에서 가장 안쪽 컨트롤의 순서로 발생하는 것이 일반적인 이벤트 발생 규칙입니다. 마스터 페이지는 콘텐츠 페이지에 병합되고 콘텐츠 페이지에서 컨트롤로 처리된다는 점을 기억하면 이해하기가 쉽습니다.

다음은 마스터 페이지가 콘텐츠 페이지와 병합될 때 이벤트가 발생하는 순서입니다.

  1. 마스터 페이지 컨트롤의 Init 이벤트

  2. 콘텐츠 컨트롤의 Init 이벤트

  3. 마스터 페이지의 Init 이벤트

  4. 콘텐츠 페이지의 Init 이벤트

  5. 콘텐츠 페이지의 Load 이벤트

  6. 마스터 페이지의 Load 이벤트

  7. 콘텐츠 컨트롤의 Load 이벤트

  8. 콘텐츠 페이지의 PreRender 이벤트

  9. 마스터 페이지의 PreRender 이벤트

  10. 마스터 페이지 컨트롤의 PreRender 이벤트

  11. 콘텐츠 컨트롤의 PreRender 이벤트

페이지 개발자에게는 마스터 및 콘텐츠 페이지의 이벤트 순서가 중요하지 않지만, 특정 컨트롤의 사용 가능 여부에 따라 달라지는 이벤트 처리기를 만드는 경우에는 마스터 및 콘텐츠 페이지의 이벤트 순서를 이해하고 있는 것이 좋습니다.

표시: