A newer version of this page is available. Switch to the current version.

GridViewBase.ShowingEditor Event

Allows you to prevent an end user from activating editors of individual cells.

Namespace: DevExpress.Xpf.Grid

Assembly: DevExpress.Xpf.Grid.v20.2.dll

Declaration

public event ShowingEditorEventHandler ShowingEditor

Event Data

The ShowingEditor event's data class is ShowingEditorEventArgs. The following properties provide information specific to this event:

Property Description
Cancel Gets or sets the value indicating whether to prevent showing the editor.
Column Gets a column, for which an event has been raised.
Handled Gets or sets a value that indicates the present state of the event handling for a routed event as it travels the route. Inherited from RoutedEventArgs.
OriginalSource Gets the original reporting source as determined by pure hit testing, before any possible Source adjustment by a parent class. Inherited from RoutedEventArgs.
RoutedEvent Gets or sets the RoutedEvent associated with this RoutedEventArgs instance. Inherited from RoutedEventArgs.
Row Gets the data row for which an event has been raised.
RowHandle Gets or sets the row handle, for which an event has been raised. Inherited from EditorEventArgsBase.
Source Gets or sets a reference to the object that raised the event. Inherited from RoutedEventArgs.
Value Gets the edit value stored in the editor, for which an event has been raised. Inherited from EditorEventArgsBase.

The event data class exposes the following methods:

Method Description
InvokeEventHandler(Delegate, Object) When overridden in a derived class, provides a way to invoke event handlers in a type-specific way, which can increase efficiency over the base implementation. Inherited from RoutedEventArgs.
OnSetSource(Object) When overridden in a derived class, provides a notification callback entry point whenever the value of the Source property of an instance changes. Inherited from RoutedEventArgs.

Remarks

The ShowingEditor event is raised before the focused cell’s editor is activated allowing you to cancel the action and prevent its value from being edited. To do this, set the event parameter’s Cancel property to false.

The following code sample shows how to prevent end users from editing values of individual cells. In this example, end users are not allowed to change a product’s Price if the product is discontinued:

View Example: How to Prevent Individual Cells From Being Edited

void ShowingEditor(object sender, ShowingEditorEventArgs e) {
    if (e.Column.FieldName != "UnitPrice") return;
    e.Cancel = (bool)grid.GetCellValue(e.RowHandle, "Discontinued");
} 

Tip

You can conditionally disable data cells or make cells read-only via the BaseColumn.IsEnabledBinding and BaseColumn.IsReadOnlyBinding properties.

See Also