DataGridViewElementStates DataGridViewElementStates DataGridViewElementStates DataGridViewElementStates Enum


Specifies the user interface (UI) state of a element within a DataGridView control.

This enumeration has a FlagsAttribute attribute that allows a bitwise combination of its member values.

public enum class DataGridViewElementStates
public enum DataGridViewElementStates
type DataGridViewElementStates = 
Public Enum DataGridViewElementStates


Displayed Displayed Displayed Displayed 1

Indicates the an element is currently displayed onscreen.

Frozen Frozen Frozen Frozen 2

Indicates that an element cannot be scrolled through the UI.

None None None None 0

Indicates that an element is in its default state.

ReadOnly ReadOnly ReadOnly ReadOnly 4

Indicates that an element will not accept user input to change its value.

Resizable Resizable Resizable Resizable 8

Indicates that an element can be resized through the UI. This value is ignored except when combined with the ResizableSet value.

ResizableSet ResizableSet ResizableSet ResizableSet 16

Indicates that an element does not inherit the resizable state of its parent.

Selected Selected Selected Selected 32

Indicates that an element is in a selected (highlighted) UI state.

Visible Visible Visible Visible 64

Indicates that an element is visible (displayable).


The following code example illustrates the use of this type. For more information, see How to: Perform a Custom Action Based on Changes in a Cell of a Windows Forms DataGridView Control.

private void dataGridView1_CellStateChanged(object sender,
    DataGridViewCellStateChangedEventArgs e)
    DataGridViewElementStates state = e.StateChanged;
    string msg = String.Format("Row {0}, Column {1}, {2}",
        e.Cell.RowIndex, e.Cell.ColumnIndex, e.StateChanged);
    MessageBox.Show(msg, "Cell State Changed");
Private Sub dataGridView1_CellStateChanged(ByVal sender As Object, _
    ByVal e As DataGridViewCellStateChangedEventArgs) _
    Handles dataGridView1.CellStateChanged

    Dim state As DataGridViewElementStates = e.StateChanged
    Dim msg As String = String.Format( _
        "Row {0}, Column {1}, {2}", _
        e.Cell.RowIndex, e.Cell.ColumnIndex, e.StateChanged)
    MessageBox.Show(msg, "Cell State Changed")

End Sub


Although these different states, like Frozen, are enforced by the UI, they can be programmatically overruled.

Applies to

See also