DataBoundControlAdapter.PerformDataBinding(IEnumerable) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
연결된 DataBoundControl 개체의 데이터 소스에 있는 데이터를 컨트롤 어댑터에 바인딩합니다.
protected public:
virtual void PerformDataBinding(System::Collections::IEnumerable ^ data);
protected internal virtual void PerformDataBinding (System.Collections.IEnumerable data);
abstract member PerformDataBinding : System.Collections.IEnumerable -> unit
override this.PerformDataBinding : System.Collections.IEnumerable -> unit
Protected Friend Overridable Sub PerformDataBinding (data As IEnumerable)
매개 변수
- data
- IEnumerable
파생된 IEnumerable에 바인딩할 Object의 DataBoundControl입니다.
예제
다음 코드 예제에서는 재정의 하는 방법을 보여 줍니다.는 PerformDataBinding 를 1 차원 데이터 소스를 저장 하는 컬렉션 ArrayList 행 구분 기호를 추가 합니다. 재정의 하는 방법을 보여 줍니다는 RenderContents 렌더링 하는 메서드를 ArrayList 구분 하 여 필드의 목록으로 <br />
태그입니다.
// One-dimensional list for the grid data.
ArrayList dataArray = new ArrayList();
// Copy grid data to one-dimensional list, add row separators.
protected override void PerformDataBinding(IEnumerable data)
{
IEnumerator dataSourceEnumerator = data.GetEnumerator();
// Iterate through the table rows.
while (dataSourceEnumerator.MoveNext())
{
// Add the next data row to the ArrayList.
dataArray.AddRange(
((DataRowView)dataSourceEnumerator.Current).Row.ItemArray);
// Add a separator to the ArrayList.
dataArray.Add("----------");
}
}
// Render the data source as a one-dimensional list.
protected override void RenderContents(
System.Web.UI.HtmlTextWriter writer)
{
// Render the data list.
for( int col=0; col<dataArray.Count;col++)
{
writer.Write(dataArray[col]);
writer.WriteBreak();
}
}
' One-dimensional list for the grid data.
Private dataArray As New ArrayList()
' Copy grid data to one-dimensional list, add row separators.
Protected Overrides Sub PerformDataBinding(ByVal data As IEnumerable)
Dim dataSourceEnumerator As IEnumerator = data.GetEnumerator()
' Iterate through the table rows.
While dataSourceEnumerator.MoveNext()
' Add the next data row to the ArrayList.
dataArray.AddRange(CType(dataSourceEnumerator.Current, _
DataRowView).Row.ItemArray)
' Add a separator to the ArrayList.
dataArray.Add("----------")
End While
End Sub
' Render the data source as a one-dimensional list.
Protected Overrides Sub RenderContents( _
ByVal writer As System.Web.UI.HtmlTextWriter)
' Render the data list.
Dim col As Integer
For col = 0 To dataArray.Count - 1
writer.Write(dataArray(col))
writer.WriteBreak()
Next col
End Sub
설명
PerformDataBinding 메서드는 대신를 DataBoundControl.PerformDataBinding 메서드 때를 DataBoundControlAdapter 에서 파생 된 컨트롤에 컨트롤 어댑터가 연결 된는 DataBoundControl 클래스.
일반적으로 재정의 DataBoundControl.PerformDataBinding 고유 이름 및 필요한 경우 값을 만드는 데이터를 반복 하 고 내부 컬렉션에 저장 합니다. 일반적으로 RenderContents 또는의 유사한 메서드를 DataBoundControl 내부 컬렉션에서 사용자 인터페이스 또는 자식 컨트롤에 채워집니다.
상속자 참고
대상 브라우저에 PerformDataBinding(IEnumerable) 특수 바인딩 논리가 필요한 경우(예: 컨트롤의 일반 사용과 다르게 항목 이름을 생성해야 하는 경우) 메서드를 재정의합니다.
합니다 PerformDataBinding(IEnumerable) 메서드 호출을 기본 PerformDataBinding(IEnumerable)입니다. 의 PerformDataBinding(IEnumerable) 데이터 바인딩 기능이 필요한 경우에만 기본 메서드를 DataBoundControl호출해야 합니다.