DataBoundControlAdapter.PerformDataBinding メソッド
アセンブリ: System.Web (system.web.dll 内)


DataBoundControl クラスから派生したコントロールに DataBoundControlAdapter コントロール アダプタが割り当てられている場合、DataBoundControl.PerformDataBinding メソッドではなく、PerformDataBinding メソッドが呼び出されます。
通常、DataBoundControl.PerformDataBinding のオーバーライドは、データを反復処理して必要に応じて一致の名前と値を作成し、それを内部コレクションに保存します。通常、RenderContents、または DataBoundControl の同様のメソッドは、その内部コレクションからユーザー インターフェイスまたは子コントロールにデータを挿入します。
継承時の注意 対象のブラウザに専用のロジックが必要な場合 (コントロールの通常の使用方法とは異なる方法で項目名を作成する必要がある場合など) は、PerformDataBinding メソッドをオーバーライドします。 PerformDataBinding 基本メソッドは DataBoundControl.PerformDataBinding を呼び出します。PerformDataBinding 基本メソッドは、DataBoundControl のデータ バインド機能が必要な場合のみ呼び出すようにしてください。
PerformDataBinding コレクションをオーバーライドして、データ ソースを 1 次元の ArrayList オブジェクトに保存し、行区切り記号を追加する方法を次のコード例に示します。また、RenderContents メソッドをオーバーライドして、ArrayList を <br /> タグで区切られたフィールドのリストとして表示する方法も示しています。
' 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 'PerformDataBinding ' 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 'RenderContents
// 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(); } }

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からDataBoundControlAdapter.PerformDataBinding メソッドを検索する場合は、下記のリンクをクリックしてください。

- DataBoundControlAdapter.PerformDataBinding メソッドのページへのリンク