DataControlField.InitializeCell メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
セルのコントロールのコレクションにテキストまたはコントロールを追加します。
public:
virtual void InitializeCell(System::Web::UI::WebControls::DataControlFieldCell ^ cell, System::Web::UI::WebControls::DataControlCellType cellType, System::Web::UI::WebControls::DataControlRowState rowState, int rowIndex);
public virtual void InitializeCell (System.Web.UI.WebControls.DataControlFieldCell cell, System.Web.UI.WebControls.DataControlCellType cellType, System.Web.UI.WebControls.DataControlRowState rowState, int rowIndex);
abstract member InitializeCell : System.Web.UI.WebControls.DataControlFieldCell * System.Web.UI.WebControls.DataControlCellType * System.Web.UI.WebControls.DataControlRowState * int -> unit
override this.InitializeCell : System.Web.UI.WebControls.DataControlFieldCell * System.Web.UI.WebControls.DataControlCellType * System.Web.UI.WebControls.DataControlRowState * int -> unit
Public Overridable Sub InitializeCell (cell As DataControlFieldCell, cellType As DataControlCellType, rowState As DataControlRowState, rowIndex As Integer)
パラメーター
- cell
- DataControlFieldCell
DataControlFieldCell のテキストまたはコントロールを格納する DataControlField。
- cellType
- DataControlCellType
DataControlCellType 値のいずれか 1 つ。
- rowState
- DataControlRowState
DataControlRowState 値の 1 つ。DataControlFieldCell を格納する行の状態を示します。
- rowIndex
- Int32
DataControlFieldCell を含む行のインデックス。
例
次のコード例は、クラスから派生するコントロールの InitializeCell メソッドを実装する方法を DataControlField 示しています。 このクラスは RadioButtonField
、コントロール内のすべての行に対してデータ バインドラジオ ボタンを GridView レンダリングします。 行がユーザーにデータを表示していて、編集モードでない場合、 RadioButton コントロールは無効になります。 ユーザーがコントロール内の行 GridView の更新を選択した場合など、行が編集モードの場合、 RadioButton コントロールはクリックできるように有効としてレンダリングされます。 この例では、行の状態が 1 つ以上 DataControlRowState の値の組み合わせである可能性があるため、ビットごとの AND 演算子を使用します。
// This method adds a RadioButton control and any other
// content to the cell's Controls collection.
protected override void InitializeDataCell
(DataControlFieldCell cell, DataControlRowState rowState) {
RadioButton radio = new RadioButton();
// If the RadioButton is bound to a DataField, add
// the OnDataBindingField method event handler to the
// DataBinding event.
if (DataField.Length != 0) {
radio.DataBinding += new EventHandler(this.OnDataBindField);
}
radio.Text = this.Text;
// Because the RadioButtonField is a BoundField, it only
// displays data. Therefore, unless the row is in edit mode,
// the RadioButton is displayed as disabled.
radio.Enabled = false;
// If the row is in edit mode, enable the button.
if ((rowState & DataControlRowState.Edit) != 0 ||
(rowState & DataControlRowState.Insert) != 0) {
radio.Enabled = true;
}
cell.Controls.Add(radio);
}
' This method adds a RadioButton control and any other
' content to the cell's Controls collection.
Protected Overrides Sub InitializeDataCell( _
ByVal cell As DataControlFieldCell, _
ByVal rowState As DataControlRowState)
Dim radio As New RadioButton()
' If the RadioButton is bound to a DataField, add
' the OnDataBindingField method event handler to the
' DataBinding event.
If DataField.Length <> 0 Then
AddHandler radio.DataBinding, AddressOf Me.OnDataBindField
End If
radio.Text = Me.Text
' Because the RadioButtonField is a BoundField, it only
' displays data. Therefore, unless the row is in edit mode,
' the RadioButton is displayed as disabled.
radio.Enabled = False
' If the row is in edit mode, enable the button.
If (rowState And DataControlRowState.Edit) <> 0 _
OrElse (rowState And DataControlRowState.Insert) <> 0 Then
radio.Enabled = True
End If
cell.Controls.Add(radio)
End Sub
注釈
メソッドからDataControlField派生した型は、ユーザー インターフェイス (UI) を表示するためにテーブルをDataControlFieldCell使用するデータ コントロールに属するオブジェクトにテキストとコントロールを追加するメソッドを実装InitializeCellします。 これらのデータ コントロールは、それぞれの CreateChildControls
メソッドが呼び出されたときに、テーブル構造の完全な行を行ごとに作成します。 メソッドはInitializeCell、次のようなDetailsViewデータ コントロールのメソッドによってInitializeRow
呼び出されますGridView。
オブジェクトを使用してデータまたはコントロールを使用 DataControlFieldCell してテーブル構造のセルを初期化するカスタム データ バインド コントロールを記述する場合は、このメソッドを呼び出します。 から派生した DataControlFieldクラスを記述するときに、このメソッドを実装します。