2013-02-11 1 views
1

자바에서 호출 된 ScriptMethod을 사용하고 있습니다. 이 메서드 내에서 LoadControl을 사용하여 프로그래밍 방식으로 컨트롤을 가져 오려고합니다. 또한 내 (정적) ScriptMethod 들어있는 Page의 인스턴스정적 스크립트 메소드의 LoadControl이 페이지 수명주기를 준수하지 않음 (초기화 이벤트가 발생하지 않음)

나는 현재 IHttpHandler (HttpContext.Current.Handler)이 컨트롤을 추가하고있다. 이 예제에서는 LoadControl을 사용하여로드 된 컨트롤을 추가하지만 Init 이벤트는 발생하지 않습니다.

페이지 수명주기를 준수하면서 ScriptMethodLoadControl을 사용할 수 있습니까?

답변

0

당신은 화재 관련 이벤트 얻을 수있는 컨트롤이 포함되어 execute the page해야합니다 :

static void RenderControlTo(string pathToControl, TextWriter writer) 
{ 
    var page = new Page(); 
    var control = page.LoadControl(pathToControl); 
    page.Controls.Add(control); 

    HttpContext.Current.Server.Execute(page, writer, false); 
}