다음을 통해 공유


TemplateControl.LoadControl 메서드

정의

Control을 로드합니다.

오버로드

LoadControl(String)

지정한 가상 경로를 기반으로 하는 파일에서 Control 개체를 로드합니다.

LoadControl(Type, Object[])

지정한 형식과 생성자 매개 변수에 따라 Control 개체를 로드합니다.

설명

컨테이너 컨트롤에 컨트롤을 로드하면 컨테이너는 현재 이벤트를 따라잡을 때까지 추가된 컨트롤의 이벤트를 모두 발생합니다. 그러나 추가된 컨트롤은 포스트백 데이터 처리를 따라잡지 못합니다. 유효성 검사를 포함하여 포스트백 데이터 처리에 참여할 추가된 컨트롤의 경우 이벤트가 아닌 이벤트에 컨트롤을 InitLoad 추가해야 합니다.

LoadControl(String)

지정한 가상 경로를 기반으로 하는 파일에서 Control 개체를 로드합니다.

public:
 System::Web::UI::Control ^ LoadControl(System::String ^ virtualPath);
public System.Web.UI.Control LoadControl (string virtualPath);
member this.LoadControl : string -> System.Web.UI.Control
Public Function LoadControl (virtualPath As String) As Control

매개 변수

virtualPath
String

컨트롤 파일의 가상 경로입니다.

반환

지정한 Control을 반환합니다.

예외

가상 경로가 null이거나 빈 경우

예제

다음 코드 예제를 사용 LoadControl 하는 방법에 설명 합니다 ASP.NET 페이지에 사용자 컨트롤을 추가 하는 방법입니다.

이벤트 메서드에서 OnInit 이 페이지는 메서드를 LoadControl 사용하여 페이지에 사용자 컨트롤을 프로그래밍 방식으로 만듭니다. 메서드는 라는 웹 서버 컨트롤의 Controls 속성에 컨트롤Placeholder1PlaceHolder 추가 합니다.

이 코드 예제에서 사용되는 클래스의 MyControl 정의는 를 참조하세요 TemplateControl.

void Page_Init(object sender, System.EventArgs e)
{
    // Instantiate the UserControl object
    MyControl myControl1 =
        (MyControl)LoadControl("TempControl_Samples1.ascx.cs");
    PlaceHolder1.Controls.Add(myControl1);
}
Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs)
    ' Obtain a UserControl object MyControl from the
    ' user control file TempControl_Samples1.ascx.vb
    Dim myControl1 As MyControl = CType(LoadControl("TempControl_Samples1.vb.ascx"), MyControl)
    Controls.Add(myControl1)
End Sub

설명

컨트롤이 캐싱을 지원하는 경우 메서드에서 LoadControl 반환된 개체는 실제로 Control 개체가 아니라 개체입니다 PartialCachingControl . 매개 변수가 virtualPath 상대인 경우 로드된 컨트롤의 경로는 의 경로를 기준으로 합니다 TemplateControl.

컨테이너 컨트롤에 컨트롤을 로드하면 컨테이너는 현재 이벤트를 따라잡을 때까지 추가된 컨트롤의 이벤트를 모두 발생합니다. 그러나 추가된 컨트롤은 포스트백 데이터 처리를 따라잡지 못합니다. 유효성 검사를 포함하여 포스트백 데이터 처리에 참여할 추가된 컨트롤의 경우 이벤트가 아닌 이벤트에 컨트롤을 InitLoad 추가해야 합니다.

추가 정보

적용 대상

LoadControl(Type, Object[])

지정한 형식과 생성자 매개 변수에 따라 Control 개체를 로드합니다.

public:
 System::Web::UI::Control ^ LoadControl(Type ^ t, cli::array <System::Object ^> ^ parameters);
public System.Web.UI.Control LoadControl (Type t, object[] parameters);
member this.LoadControl : Type * obj[] -> System.Web.UI.Control
Public Function LoadControl (t As Type, parameters As Object()) As Control

매개 변수

t
Type

컨트롤의 형식입니다.

parameters
Object[]

호출할 생성자의 매개 변수와 수, 순서 및 유형 면에서 일치하는 인수의 배열입니다. parameters이(가) 빈 배열이거나 null이면 매개 변수를 사용하지 않는 생성자(매개 변수가 없는 생성자)가 호출됩니다.

반환

지정한 UserControl을 반환합니다.

설명

사용자 컨트롤이 캐싱을 지원하는 경우 메서드에서 LoadControl 반환된 개체는 실제로 UserControl 개체가 아니라 개체입니다 PartialCachingControl .

컨테이너 컨트롤에 컨트롤을 로드하면 컨테이너는 현재 이벤트를 따라잡을 때까지 추가된 컨트롤의 이벤트를 모두 발생합니다. 그러나 추가된 컨트롤은 포스트백 데이터 처리를 따라잡지 못합니다. 유효성 검사를 포함하여 포스트백 데이터 처리에 참여할 추가된 컨트롤의 경우 이벤트가 아닌 이벤트에 컨트롤을 InitLoad 추가해야 합니다.

추가 정보

적용 대상