GridColumn.Validate Event
Allows you to validate the focused cell’s data in the current column.
Namespace: DevExpress.Xpf.Grid
Assembly: DevExpress.Xpf.Grid.v24.1.dll
NuGet Package: DevExpress.Wpf.Grid.Core
Declaration
Event Data
The Validate event's data class is GridCellValidationEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
CancellationToken | Gets an object that notifies that the Update operation should be canceled. Inherited from GridRowValidationEventArgs. |
Cell | Gets a processed cell. |
CellValue | Gets the cell’s old valid value. |
Column | Gets the column that contains the processed cell. |
Culture | Gets the culture related to the validation. Inherited from ValidationEventArgs. |
ErrorContent | Gets or sets an object that describes the validation error. Inherited from ValidationEventArgs. |
ErrorType | Gets or sets the error icon type. Inherited from ValidationEventArgs. |
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. |
IsNewItem | Inherited from GridRowValidationEventArgs. |
IsValid | Gets or sets a value specifying whether the value is valid. Inherited from ValidationEventArgs. |
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 processed row. Inherited from GridRowValidationEventArgs. |
RowHandle | Gets the processed row’s handle. Inherited from GridRowValidationEventArgs. |
Source | Gets or sets a reference to the object that raised the event. Inherited from RoutedEventArgs. |
UpdateRowResult | Gets or sets a task that allows you to asynchronously post changes to an underlying data source (database). Inherited from GridRowValidationEventArgs. |
UpdateSource | Gets the action that caused the validation. Inherited from ValidationEventArgs. |
UseCancellationToken | Gets or sets whether the Update operation can be canceled. Inherited from GridRowValidationEventArgs. |
Value | Gets the editor’s value. Inherited from ValidationEventArgs. |
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. |
SetError(Object, ErrorType) | Marks the processed input value as invalid and displays an error within the editor with the specified error icon type. Inherited from ValidationEventArgs. |
SetError(Object) | Marks the processed input value as invalid and displays an error within the editor. Inherited from ValidationEventArgs. |
Remarks
When a user modifies the focused cell’s value and tries to save the changes (by pressing the ENTER key or moving focus to another cell), the grid validates a new value. First, this value is validated by the editor itself. Then, the column’s Validate event is raised, allowing you to manually validate the cell’s value. Note this event is not fired when changing cell values in code.
Note
When you use a custom CellTemplate, input validation is supported only if the template contains a BaseEdit class descendant declared as demonstrated in the following topic: Custom In-Place Cell Editors.
Refer to the following help topic for more information: Cell Validation.
Related GitHub Examples
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the Validate 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.