Control.DataBind メソッド

定義

呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。

オーバーロード

DataBind()

呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。

DataBind(Boolean)

DataBinding イベントを発生させるオプションを指定して、呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。

DataBind()

呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。

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

次の例では、 DataBind カスタム ASP.NET サーバー コントロールの メソッドをオーバーライドします。 最初に基本 OnDataBinding メソッドを呼び出し、 メソッドを ControlCollection.Clear 使用してすべての子コントロールを削除し、 メソッドを ClearChildViewState 使用して、それらの子コントロールの保存されたビューステート設定を削除します。 最後に、 ChildControlsCreated プロパティが に true 設定され、 メソッドを使用して新しく作成されたコントロールのビューステートに対する変更を追跡するようにコントロールに TrackViewState 指示されます。 これは、以前 DataBind のメソッド呼び出しから格納されたデータと新しいデータが競合しないように、コントロールにデータをバインドする場合に一般的な手法です。

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

注釈

ソースからサーバー コントロールにデータをバインドするには、このメソッドを使用します。 このメソッドは、データベース クエリを使用してデータセットを取得した後に一般的に使用されます。 ほとんどのコントロールはデータ バインディングを自動的に実行します。つまり、通常、このメソッドを明示的に呼び出す必要はありません。

このメソッドは、カスタム テンプレート化されたデータ バインド コントロールを作成するときに一般的にオーバーライドされます。 詳細については、「 How to: Create Templated ASP.NET User Controls 」および「 Developing Custom Data-Bound Web Server Controls」を参照してください。 サーバー コントロールで呼び出されると、このメソッドは、サーバー コントロールとその子コントロール内のすべてのデータ バインディング式を解決します。

こちらもご覧ください

適用対象

DataBind(Boolean)

DataBinding イベントを発生させるオプションを指定して、呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。

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

注釈

カスタム コントロールが メソッドを Control.DataBind(Boolean) オーバーライド DataBind し、 インターフェイスを実装するシナリオでは、 メソッドを IDataItemContainer 使用します。 このシナリオでは、カスタム コントロールは、 を にfalse設定して メソッドraiseOnDataBindingControl.DataBind(Boolean)呼び出し、基底クラスのDataBindメソッドが確実に呼び出されるようにします。

メソッドはControl.DataBind()、 を に設定して Control.DataBind(Boolean) メソッドをtrueraiseOnDataBinding呼び出します。

Note

を に設定して Control.DataBind(Boolean) メソッド raiseOnDataBindingfalse 呼び出すと、子コントロールが メソッドに Control.DataBind() バインドされたデータになります。

こちらもご覧ください

適用対象