DataControlField.InitializeCell Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidá do kolekce ovládacích prvků buňky text nebo ovládací prvky.
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)
Parametry
- cell
- DataControlFieldCell
A DataControlFieldCell , který obsahuje text nebo ovládací prvky ovládacího DataControlFieldprvku .
- cellType
- DataControlCellType
Jedna z DataControlCellType hodnot.
- rowState
- DataControlRowState
Jedna z DataControlRowState hodnot určující stav řádku, který obsahuje DataControlFieldCell.
- rowIndex
- Int32
Index řádku, ve který DataControlFieldCell je obsažen.
Příklady
Následující příklad kódu ukazuje, jak implementovat metodu InitializeCell pro ovládací prvek, který je odvozen z DataControlField třídy. Třída RadioButtonField
vykresluje přepínač vázané na data pro každý řádek GridView ovládacího prvku. Když řádek zobrazuje data uživateli a není v režimu úprav, RadioButton ovládací prvek je zakázaný. Když je řádek v režimu úprav, například když se uživatel rozhodne aktualizovat řádek v ovládacím GridView prvku, zobrazí se ovládací prvek jako povolený, RadioButton aby bylo možné na něj kliknout. Tento příklad používá bitové operátory AND, protože stav řádku může být kombinací jedné nebo více DataControlRowState hodnot.
// 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
Poznámky
Typy odvozené z DataControlField implementace InitializeCell metody pro přidání textu a ovládacích prvků do objektu DataControlFieldCell , který patří do ovládacího prvku dat, který používá tabulky k zobrazení uživatelského rozhraní (UI). Tyto ovládací prvky dat vytvoří úplný řádek struktury tabulky podle řádku, když se volají příslušné CreateChildControls
metody. Metoda InitializeCell je volána metodou InitializeRow
ovládacích prvků dat, jako je a DetailsView GridView.
Tuto metodu zavolejte při psaní vlastního ovládacího prvku vázaného na data, který používá DataControlFieldCell objekty k inicializaci buněk struktury tabulky dat nebo ovládacími prvky. Implementujte tuto metodu při psaní třídy odvozené z DataControlField.