DataControlRowState Перечисление

Определение

Задает состояние строки в элементе управления данными, например в DetailsView или GridView.Specifies the state of a row in a data control, such as DetailsView or GridView.

Это перечисление имеет атрибут FlagsAttribute, который разрешает побитовое сочетание значений его элементов.

public enum class DataControlRowState
[System.Flags]
public enum DataControlRowState
[<System.Flags>]
type DataControlRowState = 
Public Enum DataControlRowState
Наследование
DataControlRowState
Атрибуты

Поля

Alternate 1

Указывает, что строка элемента управления данными является альтернативной.Indicates that the data control row is an alternate row.

Состояние Alternate можно в любое время комбинировать с другими состояниями, например Normal, Edit или Insert.The Alternate state can be combined with other states, such as Normal, Edit, or Insert, at any time. Эти строки могут быть затронуты свойством AlternateRowStyle элемента управления данными, если оно указано.These rows might be affected by the AlternateRowStyle property of the data control, if set.

Edit 4

Указывает на то, что строка находится с состоянии редактирования, часто в качестве результата нажатия на кнопку редактирования данной строки.Indicates that the row is in an edit state, often the result of clicking an edit button for the row. Обычно состояния Edit и Insert являются взаимоисключающими.Typically, the Edit and Insert states are mutually exclusive.

Insert 8

Указывает на то, что строка является новой, часто созданной в результате нажатия кнопки вставки.Indicates that the row is a new row, often the result of clicking an insert button to add a new row. Обычно состояния Insert и Edit являются взаимоисключающими.Typically, the Insert and Edit states are mutually exclusive.

Normal 0

Указывает, что строка элемента управления данными находится в обычном состоянии.Indicates that the data control row is in a normal state. Состояние Normal является взаимоисключающим с другими состояниями, кроме состояния Alternate.The Normal state is mutually exclusive with other states except the Alternate state.

Selected 2

Указывает на то, что строка была выбрана пользователем.Indicates that the row has been selected by the user.

Примеры

В следующем примере показано, как использовать DataControlRowState перечисление для отображения пользовательского интерфейса в зависимости от состояния строки в GridView элементе управления.The following example demonstrates how to use the DataControlRowState enumeration to render a user interface (UI) based on the state of a row in a GridView control. RadioButtonFieldКласс, являющийся настраиваемым элементом управления поля, производным от CheckBoxField элемента управления, визуализирует переключатель, привязанный к данным, для каждой строки в GridView элементе управления.The RadioButtonField class, which is a custom field control that derives from the CheckBoxField control, renders a data-bound radio button for every row in a GridView control. Когда строка отображает данные для пользователя и не находится в режиме редактирования, RadioButton элемент управления отключается.When the row is displaying data to a user and is not in edit mode, the RadioButton control is disabled. Когда пользователь обновляет строку в, GridView а строка находится в режиме редактирования, RadioButton элемент управления отображается как включенный, чтобы его можно было щелкнуть.When the user updates a row in GridView and the row is in edit mode, the RadioButton control is rendered as enabled so that it can be clicked. В примере используются побитовые операторы и, так как состояние строки может быть сочетанием одного или нескольких DataControlRowState значений.The example uses bitwise AND operators, because the row state might be a combination of one or more DataControlRowState values. Этот пример является частью большого примера, приведенного для DataControlField класса.This example is part of a larger example provided for the DataControlField class.

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

Комментарии

DataControlRowStateПеречисление определяет состояние строки в элементе управления данными, например DetailsView или GridView .The DataControlRowState enumeration identifies the state of a row in a data control such as DetailsView or GridView. Состояние строки может быть одним или несколькими DataControlRowState значениями, поэтому используйте побитовые операции, чтобы определить, включает ли состояние строки DataControlRowState значение, а не проверку на равенство.A row's state can be one or a combination of the DataControlRowState values, so use bitwise operations to determine whether the state of the row includes a DataControlRowState value, rather than an equivalence test. DataControlRowStateПеречисление используется для любого типа строк, а не только для DataRow строк (обычно состояние строк верхнего и нижнего колонтитулов равно Normal ).The DataControlRowState enumeration is used for any type of row, not just DataRow rows (typically, the state of header and footer rows is set to Normal).

Перечисление можно использовать DataControlRowState для указания состояния GridViewRow DetailsViewRow объекта или при перечислении по GridViewRowCollection DetailsViewRowCollection коллекции или соответственно.You can use the DataControlRowState enumeration to identify the state of a GridViewRow or DetailsViewRow object when enumerating through a GridViewRowCollection or DetailsViewRowCollection collection, respectively. При написании элемента управления данными, который использует строки, можно использовать DataControlRowState перечисление, чтобы указать, когда следует отображать разные цвета для строки ( Alternate значения) или элементы управления, включенные или отключенные для редактирования строки ( Edit значения и Insert ).If you are writing a data control that uses rows, you can use the DataControlRowState enumeration to identify when to render different colors for a row (the Alternate value), or controls that are enabled or disabled for editing a row (the Edit and Insert values).

Применяется к

См. также раздел