DataControlRowState Výčet
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í.
Určuje stav řádku v ovládacím prvku dat, například DetailsView nebo GridView.
Tento výčet podporuje bitové kombinace hodnot jeho členů.
public enum class DataControlRowState
[System.Flags]
public enum DataControlRowState
[<System.Flags>]
type DataControlRowState =
Public Enum DataControlRowState
- Dědičnost
- Atributy
Pole
Alternate | 1 | Označuje, že řádek ovládacího prvku dat je alternativním řádkem. Stav |
Edit | 4 | Označuje, že je řádek ve stavu úprav, často výsledek kliknutí na tlačítko pro úpravy řádku. Edit Insert Obvykle se státy vzájemně vylučují. |
Insert | 8 | Označuje, že řádek je nový řádek, často výsledkem kliknutí na tlačítko vložení a přidání nového řádku. Insert Edit Obvykle se státy vzájemně vylučují. |
Normal | 0 | Označuje, že řádek ovládacího prvku dat je v normálním stavu. Stát Normal se vzájemně vylučují s jinými státy s výjimkou Alternate státu. |
Selected | 2 | Označuje, že uživatel vybral řádek. |
Příklady
Následující příklad ukazuje, jak pomocí výčtu DataControlRowState
vykreslit uživatelské rozhraní (UI) na základě stavu řádku v ovládacím GridView prvku. Třída RadioButtonField
, což je vlastní ovládací prvek pole, který je odvozen z CheckBoxField ovládacího prvku, 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ž uživatel aktualizuje řádek GridView a řádek je v režimu úprav, ovládací prvek se zobrazí jako povolený, RadioButton aby bylo možné na něj kliknout. V příkladu se používají bitové operátory AND, protože stav řádku může být kombinací jedné nebo více DataControlRowState
hodnot. Tento příklad je součástí většího příkladu poskytnutého DataControlField pro třídu.
// 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
Výčet DataControlRowState
identifikuje stav řádku v ovládacím prvku dat, například DetailsView nebo GridView. Stav řádku může být jeden nebo kombinace DataControlRowState
hodnot, takže pomocí bitové operace určete, zda stav řádku obsahuje DataControlRowState
hodnotu, a nikoli test ekvivalence. Výčet DataControlRowState
se používá pro jakýkoli typ řádku, nejen DataRow pro řádky (obvykle je stav řádků záhlaví a zápatí nastavený na Normal
).
Pomocí výčtu DataControlRowState
můžete identifikovat stav objektu GridViewRow nebo DetailsViewRow objektu při výčtu GridViewRowCollection prostřednictvím kolekce nebo DetailsViewRowCollection kolekce. Pokud píšete ovládací prvek dat, který používá řádky, můžete pomocí DataControlRowState
výčtu určit, kdy se mají pro řádek vykreslit různé barvy ( Alternate
hodnota) nebo ovládací prvky, které jsou povolené nebo zakázané pro úpravy řádku (hodnoty Edit
a Insert
hodnoty).