2010-05-01 2 views
0

다음 코드는 이 PhotoList으로 호출되지 않도록합니다. 컨트롤을 정상적인 페이지 라이브 사이클에있는 것처럼 초기화해야합니다. 어떻게해야합니까?강제 페이지 초기화

Page pageHolder = new Page(); 
UserControl viewControl = (UserControl)pageHolder.LoadControl("Common/PhotoList.ascx"); 
pageHolder.Controls.Add(viewControl); 
+0

어디에서 코드가 호출되고 있습니까? –

답변

1

pageHolder 란 무엇이며 왜 새로운 인스턴스를 만드는 이유는 무엇입니까? 일반적인 패턴은 장소 홀더 컨트롤에 컨트롤을로드하는 것과 같습니다.

UserControl viewControl = (UserControl) Page .LoadControl ("Common/PhotoList.ascx"); placeHolder .Controls.Add (viewControl);

Page.Load를 호출하면 Page_Load 이벤트가 발생합니다.

+0

AJAX 응답을 생성해야하는데,이 컨트롤은 문자열로 컨트롤을 렌더링하고 클라이언트로 다시 보내야합니다. 더미 페이지에있을 때까지 제대로 렌더링되지 않으며 페이지의 정상적인 수명주기가 있어야합니다. 강요 할 수 없다. – Tony

+0

PhotoList.ascx의 Page_Load 이벤트에 어떤 코드가 있습니까? –

+0

Not the Page_Load ObjectDataSource가 올바르게 작동하지 않기 때문에 페이지를 실시간으로 작동시켜야합니다. – Tony