DataControlRowState Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Especifica el estado de una fila en un control de datos, como DetailsView o GridView.
Esta enumeración admite una combinación bit a bit de sus valores de miembro.
public enum class DataControlRowState
[System.Flags]
public enum DataControlRowState
[<System.Flags>]
type DataControlRowState =
Public Enum DataControlRowState
- Herencia
- Atributos
Campos
Alternate | 1 | Indica que la fila del control de datos es una fila alterna. El estado |
Edit | 4 | Indica que la fila está en estado de edición, normalmente porque se ha hecho clic en un botón de edición de la fila. Normalmente, los estados Edit y Insert son mutuamente excluyentes. |
Insert | 8 | Indica que la fila es una nueva fila, normalmente porque se ha hecho clic en un botón de inserción para agregar una nueva fila. Normalmente, los estados Insert y Edit son mutuamente excluyentes. |
Normal | 0 | Indica que la fila del control de datos está en estado normal. El estado Normal se excluye mutuamente con otros estados, excepto el estado Alternate. |
Selected | 2 | Indica que el usuario ha seleccionado la fila. |
Ejemplos
En el ejemplo siguiente se muestra cómo usar la DataControlRowState
enumeración para representar una interfaz de usuario (UI) basada en el estado de una fila de un GridView control . La RadioButtonField
clase , que es un control de campo personalizado que se deriva del CheckBoxField control , representa un botón de radio enlazado a datos para cada fila de un GridView control. Cuando la fila muestra datos a un usuario y no está en modo de edición, el RadioButton control está deshabilitado. Cuando el usuario actualiza una fila en GridView y la fila está en modo de edición, el RadioButton control se representa como habilitado para que se pueda hacer clic en ella. En el ejemplo se usan operadores AND bit a bit, ya que el estado de fila podría ser una combinación de uno o varios DataControlRowState
valores. Este ejemplo forma parte de un ejemplo más grande proporcionado para la DataControlField clase .
// 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
Comentarios
La DataControlRowState
enumeración identifica el estado de una fila en un control de datos como DetailsView o GridView. El estado de una fila puede ser uno o una combinación de los DataControlRowState
valores, por lo que debe usar operaciones bit a bit para determinar si el estado de la fila incluye un DataControlRowState
valor, en lugar de una prueba de equivalencia. La DataControlRowState
enumeración se usa para cualquier tipo de fila, no solo DataRow para las filas (normalmente, el estado de las filas de encabezado y pie de página se establece Normal
en ).
Puede usar la DataControlRowState
enumeración para identificar el estado de un GridViewRow objeto o DetailsViewRow al enumerar a través de una GridViewRowCollection colección o DetailsViewRowCollection , respectivamente. Si va a escribir un control de datos que usa filas, puede usar la DataControlRowState
enumeración para identificar cuándo representar colores diferentes para una fila (el Alternate
valor), o controles habilitados o deshabilitados para editar una fila (los Edit
valores y Insert
).