2010-07-09 3 views
1

Page.Load 메서드로 웹 페이지의 패널에 추가되는 사용자 지정 ASP.NET 사용자 정의 컨트롤이 있습니다. 컨트롤에는 일부 레이블과 GridView가 포함되어 있습니다. 이 코드로 페이지에 추가 할 것입니다 :PageControl은 Page.Load에 동적으로 추가 된 경우 페이지에 나타나지 않습니다.

어떤 이유로 인해 추가 된 컨트롤이 페이지에 실제로 나타나지 않습니다. 또한 컨트롤 내의 컨트롤이 모두 null 인 것으로 나타 났지만 문제의 일부인지 또는 나중에 만들어 지는지 여부를 알 수 없습니다. 어떤 아이디어?

답변

3

UserControl 또는 CompositeControl, WebControl 등을 상속받은 사용자 지정 서버 컨트롤입니까?

//load the control 
Control rc= LoadControl("~/UserControls/MyControl.ascx"); 

//set up values as needed 
rc.Username = this.Username; 

//add the control where needed 
this.pnlPB.Controls.Add(rc); 
+0

그래, 당신 말이 맞아 :

일반적으로 사용자 컨트롤, 당신은 그와 같이, ASCX 위치를 통해 그들을로드합니다. –

+0

예 - ascx 파일은 인스턴스화되지 않고 컴파일해야합니다. –

+0

이것은 절대적으로 맞습니다! 정말 고마워! –

관련 문제