Back to Devexpress

TableView.RowDoubleClick Event

wpf-devexpress-dot-xpf-dot-grid-dot-tableview-1bb92911.md

latest7.9 KB
Original Source

TableView.RowDoubleClick Event

Occurs when a user double-clicks a row.

Namespace : DevExpress.Xpf.Grid

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

NuGet Package : DevExpress.Wpf.Grid.Core

Declaration

csharp
public event RowDoubleClickEventHandler RowDoubleClick
vb
Public Event RowDoubleClick As RowDoubleClickEventHandler

Event Data

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

PropertyDescription
ChangedButtonGets a mouse button that has been pressed twice.
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.
HitInfoGets or sets the information on a view element located under the mouse pointer.
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.
SourceGets the View that raised the event.

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 HitInfo property returns information about a view element that a user double-clicks. Refer to the following topic for more information: Hit Information.

If you want to maintain a clean MVVM pattern and process the row double-click operation in a View Model, create a command and bind it to the RowDoubleClickCommand property.

Example

The following example demonstrates how to use the TableView.RowDoubleClick event to process double-clicks:

View Example: How to Handle Row Double-clicks

xaml
<dxg:GridControl x:Name="grid">
<!-- ... -->
    <dxg:GridControl.View>
        <dxg:TableView RowDoubleClick="OnRowDoubleClick"/>
    </dxg:GridControl.View>
</dxg:GridControl>
csharp
void OnRowDoubleClick(object sender, RowDoubleClickEventArgs e) {
    int rowHandle = e.HitInfo.RowHandle;
    if(rowHandle == GridControl.InvalidRowHandle)
        return;
    if(grid.IsGroupRowHandle(rowHandle))
        MessageBox.Show("A group row has been double clicked.", "Info");
    else
        MessageBox.Show("A data row has been double clicked.", "Info");
}
vb
Private Sub OnRowDoubleClick(ByVal sender As Object, ByVal e As RowDoubleClickEventArgs)
    Dim rowHandle As Integer = e.HitInfo.RowHandle
    If rowHandle = DataControlBase.InvalidRowHandle Then Return
    If Me.grid.IsGroupRowHandle(rowHandle) Then
        MessageBox.Show("A group row has been double clicked.", "Info")
    Else
        MessageBox.Show("A data row has been double clicked.", "Info")
    End If
End Sub

The following code snippet (auto-collected from DevExpress Examples) contains a reference to the RowDoubleClick 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-handle-row-double-clicks/CS/RowDoubleClick_CodeBehind/MainWindow.xaml#L23

xml
<dxg:GridControl.View>
    <dxg:TableView RowDoubleClick="OnRowDoubleClick"/>
</dxg:GridControl.View>

wpf-data-grid-handle-row-double-clicks/CS/RowDoubleClick_CodeBehind/obj/Debug/net8.0-windows/MainWindow.g.cs#L105

csharp
#line 23 "..\..\..\MainWindow.xaml"
((DevExpress.Xpf.Grid.TableView)(target)).RowDoubleClick += new DevExpress.Xpf.Grid.RowDoubleClickEventHandler(this.OnRowDoubleClick);

wpf-data-grid-handle-row-double-clicks/VB/RowDoubleClick_CodeBehind/obj.NetFX/Debug/MainWindow.g.vb#L105

vb
#ExternalSource("..\..\MainWindow.xaml",23)
AddHandler CType(target,DevExpress.Xpf.Grid.TableView).RowDoubleClick, New DevExpress.Xpf.Grid.RowDoubleClickEventHandler(AddressOf Me.OnRowDoubleClick)

See Also

TableView Class

TableView Members

DevExpress.Xpf.Grid Namespace