Back to Devexpress

GridViewBase.ShowingEditor Event

wpf-devexpress-dot-xpf-dot-grid-dot-gridviewbase-d9f6dae8.md

latest7.6 KB
Original Source

GridViewBase.ShowingEditor Event

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

Namespace : DevExpress.Xpf.Grid

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

NuGet Package : DevExpress.Wpf.Grid.Core

Declaration

csharp
public event ShowingEditorEventHandler ShowingEditor
vb
Public Event ShowingEditor As ShowingEditorEventHandler

Event Data

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

PropertyDescription
CancelGets or sets the value indicating whether to prevent showing the editor. Inherited from ShowingEditorEventArgsBase.
ColumnGets a column, for which an event has been raised.
HandledGets 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.
OriginalSourceGets the original reporting source as determined by pure hit testing, before any possible Source adjustment by a parent class. Inherited from RoutedEventArgs.
RoutedEventGets or sets the RoutedEvent associated with this RoutedEventArgs instance. Inherited from RoutedEventArgs.
RowGets the data row for which an event has been raised.
RowHandleGets or sets the row handle, for which an event has been raised. Inherited from EditorEventArgsBase.
SourceGets or sets a reference to the object that raised the event. Inherited from RoutedEventArgs.
ValueGets 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:

MethodDescription
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 example shows how to disable GridControl rows based on their values.

View Example: Disable Rows Based on Their Values

csharp
void OnEditorShowing(object sender, ShowingEditorEventArgs e) {
    if(e.Column.FieldName != nameof(Item.AllowEdit))
        e.Cancel = !(AssociatedObject.DataControl.CurrentItem as Item).AllowEdit;
}
vb
Private Sub OnEditorShowing(ByVal sender As Object, ByVal e As ShowingEditorEventArgs)
    If e.Column.FieldName <> NameOf(Item.AllowEdit) Then e.Cancel = Not (TryCast(AssociatedObject.DataControl.CurrentItem, Item)).AllowEdit
End Sub

Tip

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

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the ShowingEditor event.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

wpf-data-grid-disable-rows-based-on-their-values/CS/WpfApplication/DisableRowBehavior.cs#L8

csharp
base.OnAttached();
    AssociatedObject.ShowingEditor += OnEditorShowing;
}

wpf-data-grid-disable-rows-based-on-their-values/VB/WpfApplication/DisableRowBehavior.vb#L11

vb
MyBase.OnAttached()
    AddHandler AssociatedObject.ShowingEditor, AddressOf OnEditorShowing
End Sub

See Also

Edit Cell Values in UI

ShownEditor

ShowEditor

GridViewBase Class

GridViewBase Members

DevExpress.Xpf.Grid Namespace