DataControlRowState Énumération

Définition

Spécifie l’état d’une ligne dans un contrôle de données, tel que DetailsView ou GridView.

Cette énumération prend en charge une combinaison au niveau du bit de ses valeurs membres.

public enum class DataControlRowState
[System.Flags]
public enum DataControlRowState
[<System.Flags>]
type DataControlRowState = 
Public Enum DataControlRowState
Héritage
DataControlRowState
Attributs

Champs

Nom Valeur Description
Normal 0

Indique que la ligne de contrôle de données est dans un état normal. L’état Normal s’exclue mutuellement avec d’autres états, à l’exception de l’état Alternate .

Alternate 1

Indique que la ligne de contrôle de données est une autre ligne.

L’état Alternate peut être combiné à d’autres états, tels que Normal, Editou Insert, à tout moment. Ces lignes peuvent être affectées par la AlternateRowStyle propriété du contrôle de données, si elle est définie.

Selected 2

Indique que la ligne a été sélectionnée par l’utilisateur.

Edit 4

Indique que la ligne est dans un état d’édition, souvent le résultat d’un clic sur un bouton d’édition pour la ligne. En règle générale, les états et Insert les Edit états s’excluent mutuellement.

Insert 8

Indique que la ligne est une nouvelle ligne, souvent le résultat d’un clic sur un bouton Insérer pour ajouter une nouvelle ligne. En règle générale, les états et Edit les Insert états s’excluent mutuellement.

Exemples

L’exemple suivant montre comment utiliser l’énumération DataControlRowState pour afficher une interface utilisateur en fonction de l’état d’une ligne dans un GridView contrôle. La RadioButtonField classe, qui est un contrôle de champ personnalisé qui dérive du CheckBoxField contrôle, affiche une case d’option liée aux données pour chaque ligne d’un GridView contrôle. Lorsque la ligne affiche des données à un utilisateur et n’est pas en mode édition, le RadioButton contrôle est désactivé. Lorsque l’utilisateur met à jour une ligne et que la ligne GridView est en mode édition, le RadioButton contrôle est affiché comme activé afin qu’il puisse être cliqué. L’exemple utilise des opérateurs AND au niveau du bit, car l’état de ligne peut être une combinaison d’une ou plusieurs DataControlRowState valeurs. Cet exemple fait partie d’un exemple plus large fourni pour la DataControlField classe.

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

Remarques

L’énumération DataControlRowState identifie l’état d’une ligne dans un contrôle de données tel que DetailsView ou GridView. L’état d’une ligne peut être une ou une combinaison des DataControlRowState valeurs. Utilisez donc des opérations au niveau du bit pour déterminer si l’état de la ligne inclut une DataControlRowState valeur, plutôt qu’un test d’équivalence. L’énumération DataControlRowState est utilisée pour n’importe quel type de ligne, pas seulement DataRow pour les lignes (généralement, l’état des lignes d’en-tête et de pied de page est défini sur Normal).

Vous pouvez utiliser l’énumération DataControlRowState pour identifier l’état d’un ou DetailsViewRow d’un GridViewRow objet lors de l’énumération via une ou DetailsViewRowCollection une GridViewRowCollection collection, respectivement. Si vous écrivez un contrôle de données qui utilise des lignes, vous pouvez utiliser l’énumération DataControlRowState pour identifier quand afficher différentes couleurs pour une ligne (la Alternate valeur), ou des contrôles activés ou désactivés pour modifier une ligne (et les EditInsert valeurs).

S’applique à

Voir aussi