Bagikan melalui


DataControlField.InitializeCell Metode

Definisi

Menambahkan teks atau kontrol ke koleksi kontrol sel.

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)

Parameter

cell
DataControlFieldCell

DataControlFieldCell yang berisi teks atau kontrol DataControlField.

cellType
DataControlCellType

Salah DataControlCellType satu nilai.

rowState
DataControlRowState

Salah DataControlRowState satu nilai, menentukan status baris yang berisi DataControlFieldCell.

rowIndex
Int32

Indeks baris tempat baris dimuat DataControlFieldCell .

Contoh

Contoh kode berikut menunjukkan cara menerapkan InitializeCell metode untuk kontrol yang berasal dari DataControlField kelas . Kelas RadioButtonField merender tombol radio terikat data untuk setiap baris dalam GridView kontrol. Saat baris menampilkan data kepada pengguna dan tidak dalam mode edit, RadioButton kontrol dinonaktifkan. Saat baris dalam mode edit, misalnya ketika pengguna memilih untuk memperbarui baris dalam GridView kontrol, RadioButton kontrol dirender sebagai diaktifkan sehingga dapat diklik. Contoh ini menggunakan operator AND bitwise, karena status baris mungkin merupakan kombinasi dari satu atau beberapa DataControlRowState nilai.

// 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

Keterangan

Jenis yang berasal dari DataControlField mengimplementasikan InitializeCell metode untuk menambahkan teks dan kontrol ke DataControlFieldCell objek milik kontrol data yang menggunakan tabel untuk menampilkan antarmuka pengguna (UI). Kontrol data ini membuat struktur tabel lengkap baris demi baris saat metode masing-masing CreateChildControls dipanggil. Metode InitializeCell ini dipanggil dengan InitializeRow metode kontrol data seperti DetailsView dan GridView.

Panggil metode ini saat Anda menulis kontrol terikat data kustom yang menggunakan DataControlFieldCell objek untuk menginisialisasi sel struktur tabel dengan data atau kontrol. Terapkan metode ini saat Anda menulis kelas yang berasal dari DataControlField.

Berlaku untuk

Lihat juga