Control.EnsureChildControls 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
서버 컨트롤에 자식 컨트롤이 있는지 확인합니다. 서버 컨트롤에 자식 컨트롤이 없으면 자식 컨트롤을 만듭니다.
protected:
virtual void EnsureChildControls();
protected virtual void EnsureChildControls ();
abstract member EnsureChildControls : unit -> unit
override this.EnsureChildControls : unit -> unit
Protected Overridable Sub EnsureChildControls ()
예제
다음 예제에서는 메서드를 EnsureChildControls 사용하여 현재 서버 컨트롤에 자식 컨트롤이 있는지 확인합니다. 그런 다음 현재 서버 컨트롤의 ControlCollection 개체에서 자식 TextBox 웹 컨트롤의 속성을 가져오거나 설정합니다Text.
중요
이 예제에는 사용자 입력을 허용하는 텍스트 상자가 있으므로 보안상 위험할 수 있습니다. 기본적으로 ASP.NET 웹 페이지는 사용자 입력 내용에 스크립트 또는 HTML 요소가 포함되어 있지 않은지 확인합니다. 자세한 내용은 Script Exploits Overview를 참조하세요.
// Ensure the current control has children,
// then get or set the Text property.
public int Value {
get {
this.EnsureChildControls();
return Int32.Parse(((TextBox)Controls[1]).Text);
}
set {
this.EnsureChildControls();
((TextBox)Controls[1]).Text = value.ToString();
}
}
' Ensure the current control has children,
' then get or set the Text property.
Public Property Value() As Integer
Get
Me.EnsureChildControls()
Return Int32.Parse(CType(Controls(1), TextBox).Text)
End Get
Set
Me.EnsureChildControls()
CType(Controls(1), TextBox).Text = value.ToString()
End Set
End Property
설명
이 메서드는 먼저 속성의 현재 값을 확인합니다 ChildControlsCreated . 이 값이 이 false
면 메서드가 CreateChildControls 호출됩니다.
메서드는 EnsureChildControls 일반적으로 복합 컨트롤에서 사용 됩니다 일부 또는 모든 기능에 대 한 자식 컨트롤을 사용 하는 컨트롤입니다. EnsureChildControls 자식 컨트롤이 만들어졌고 입력을 처리하거나, 데이터 바인딩을 수행하거나, 다른 작업을 수행할 준비가 되었는지 확인하기 위해 메서드가 호출됩니다.
컨트롤은 GridView 복합 컨트롤의 예입니다. 에서 생성하는 HTML 테이블을 렌더링하는 데 사용되는 , , , , 및 컨트롤과 TextBox 같은 Table자식 컨트롤을 GridView 만듭니다. LabelTableCellTableRow
대부분의 경우 사용자 지정 서버 제어 개발자는 이 메서드를 재정의할 필요가 없습니다. 이 메서드를 재정의하는 경우 기본 동작과 유사한 방식으로 사용합니다.
적용 대상
추가 정보
.NET