Control.DataBind 메서드

정의

호출된 서버 컨트롤과 그 자식 컨트롤 모두에 데이터 소스를 바인딩합니다.Binds a data source to the invoked server control and all its child controls.

오버로드

DataBind()

호출된 서버 컨트롤과 그 자식 컨트롤 모두에 데이터 소스를 바인딩합니다.Binds a data source to the invoked server control and all its child controls.

DataBind(Boolean)

DataBinding 이벤트를 발생시키는 옵션을 사용하여, 호출된 서버 컨트롤과 모든 자식 컨트롤에 데이터 소스를 바인딩합니다.Binds a data source to the invoked server control and all its child controls with an option to raise the DataBinding event.

DataBind()

호출된 서버 컨트롤과 그 자식 컨트롤 모두에 데이터 소스를 바인딩합니다.Binds a data source to the invoked server control and all its child controls.

public:
 virtual void DataBind();
public virtual void DataBind ();
abstract member DataBind : unit -> unit
override this.DataBind : unit -> unit
Public Overridable Sub DataBind ()

예제

다음 예제에서는 사용자 지정 ASP.NET 서버 컨트롤의 DataBind 메서드를 재정의 합니다.The following example overrides the DataBind method in a custom ASP.NET server control. 먼저 기본 OnDataBinding 메서드를 호출한 다음 ControlCollection.Clear 메서드를 사용 하 여 모든 자식 컨트롤을 삭제 하 고 ClearChildViewState 메서드를 사용 하 여 해당 자식 컨트롤에 대 한 저장 된 뷰 상태 설정을 삭제 합니다.It begins by calling the base OnDataBinding method and then uses the ControlCollection.Clear method to delete all the child controls and the ClearChildViewState method to delete any saved view-state settings for those child controls. 마지막으로 ChildControlsCreated 속성은 true으로 설정 되 고 컨트롤은 TrackViewState 메서드를 사용 하 여 새로 만든 컨트롤의 뷰 상태에 대 한 변경 내용을 추적 하도록 지시 됩니다.Finally, the ChildControlsCreated property is set to true and the control is instructed to track any changes to the view state of the newly created controls with the TrackViewState method. 이는 새 데이터가 이전 DataBind 메서드 호출에서 저장 된 데이터와 충돌 하지 않도록 데이터를 컨트롤에 바인딩하는 일반적인 기술입니다.This is a common technique when binding data to a control to ensure that new data does not conflict with data stored from a previous DataBind method call.

public override void DataBind() 
{
   base.OnDataBinding(EventArgs.Empty);
   // Reset the control's state.
   Controls.Clear();
   // Check for HasChildViewState to avoid unnecessary calls to ClearChildViewState.
   if (HasChildViewState)
      ClearChildViewState();
   ChildControlsCreated = true;
   if (!IsTrackingViewState)
      TrackViewState();
}
Public Overrides Sub DataBind()
   MyBase.OnDataBinding(EventArgs.Empty)
   ' Reset the control's state.
   Controls.Clear()
   ' Check for HasChildViewState to avoid unnecessary calls to ClearChildViewState.
   If HasChildViewState Then
      ClearChildViewState()
   End If
   ChildControlsCreated = True
   If Not IsTrackingViewState Then
      TrackViewState()
   End If
End Sub

설명

이 메서드를 사용 하 여 원본에서 서버 컨트롤로 데이터를 바인딩할 수 있습니다.Use this method to bind data from a source to a server control. 이 메서드는 데이터베이스 쿼리를 통해 데이터 세트를 검색한 후 일반적으로 사용됩니다.This method is commonly used after retrieving a dataset through a database query. 대부분의 컨트롤은 데이터 바인딩을 자동으로 수행 합니다. 즉, 일반적으로이 메서드를 명시적으로 호출할 필요가 없습니다.Most controls perform data binding automatically, which means that you typically do not need to call this method explicitly.

이 메서드는 일반적으로 사용자 지정 템플릿 기반 데이터 바인딩된 컨트롤을 만들 때 재정의 됩니다.This method is commonly overridden when you create a custom templated data-bound control. 자세한 내용은 방법: 템플릿 기반 ASP.NET 사용자 컨트롤 만들고 사용자 지정 데이터 바인딩된 웹 서버 컨트롤을 개발합니다.For more information, see How to: Create Templated ASP.NET User Controls and Developing Custom Data-Bound Web Server Controls. 서버 컨트롤에서 호출 되는 경우이 메서드는 서버 컨트롤 및 해당 자식 컨트롤의 모든 데이터 바인딩 식을 확인 합니다.When called on a server control, this method resolves all data-binding expressions in the server control and in any of its child controls.

추가 정보

DataBind(Boolean)

DataBinding 이벤트를 발생시키는 옵션을 사용하여, 호출된 서버 컨트롤과 모든 자식 컨트롤에 데이터 소스를 바인딩합니다.Binds a data source to the invoked server control and all its child controls with an option to raise the DataBinding event.

protected:
 virtual void DataBind(bool raiseOnDataBinding);
protected virtual void DataBind (bool raiseOnDataBinding);
abstract member DataBind : bool -> unit
override this.DataBind : bool -> unit
Protected Overridable Sub DataBind (raiseOnDataBinding As Boolean)

매개 변수

raiseOnDataBinding
Boolean

DataBinding 이벤트가 발생하면 true이고, 그렇지 않으면 false입니다.true if the DataBinding event is raised; otherwise, false.

설명

사용자 지정 컨트롤이 DataBind 메서드를 재정의 하 고 IDataItemContainer 인터페이스를 구현 하는 경우 시나리오에 Control.DataBind(Boolean) 메서드를 사용 합니다.Use the Control.DataBind(Boolean) method in a scenario when your custom control overrides the DataBind method and implements the IDataItemContainer interface. 이 시나리오에서 사용자 지정 컨트롤은 false로 설정 된 raiseOnDataBinding를 사용 하 여 Control.DataBind(Boolean) 메서드를 호출 하 여 기본 클래스의 DataBind 메서드가 호출 되도록 합니다.In this scenario, the custom control calls the Control.DataBind(Boolean) method with raiseOnDataBinding set to false to ensure that the base class's DataBind method gets called.

Control.DataBind() 메서드는 raiseOnDataBindingtrue로 설정 하 여 Control.DataBind(Boolean) 메서드를 호출 합니다.The Control.DataBind() method invokes the Control.DataBind(Boolean) method with raiseOnDataBinding set to true.

참고

false로 설정 된 raiseOnDataBinding를 사용 하 여 Control.DataBind(Boolean) 메서드를 호출 하면 모든 자식 컨트롤이 Control.DataBind() 메서드와 데이터 바인딩됩니다.Calling the Control.DataBind(Boolean) method with raiseOnDataBinding set to false causes any child controls to be data bound with the Control.DataBind() method.

추가 정보

적용 대상