PivotGridControl.CellDoubleClick Event
Occurs when a cell is double-clicked.
Namespace: DevExpress.Xpf.PivotGrid
Assembly: DevExpress.Xpf.PivotGrid.v24.2.dll
NuGet Package: DevExpress.Wpf.PivotGrid
#Declaration
public event PivotCellEventHandler CellDoubleClick
#Event Data
The CellDoubleClick event's data class is PivotCellEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
Button | Gets which mouse button has been clicked. |
Column |
Gets the custom total to which the processed cell’s column corresponds.
Inherited from Pivot |
Column |
Gets the innermost column field which corresponds to the processed cell.
Inherited from Pivot |
Column |
This member supports the internal infrastructure and is not intended to be used directly from your code.
Inherited from Pivot |
Column |
Gets the visual index of the column that contains the processed cell.
Inherited from Pivot |
Column |
Gets the type of the cell’s column header.
Inherited from Pivot |
Data |
Gets the data field which identifies the column where the processed cell resides.
Inherited from Pivot |
Display |
Gets the display text of the cell currently being processed.
Inherited from Pivot |
Element | Gets the visual element that represents the processed cell. |
Focused |
Gets whether the processed cell is the focused cell.
Inherited from Pivot |
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 Routed |
Original |
Gets the original reporting source as determined by pure hit testing, before any possible Source adjustment by a parent class.
Inherited from Routed |
Routed |
Gets or sets the Routed |
Row |
Gets the custom total to which the processed cell’s row corresponds.
Inherited from Pivot |
Row |
Gets the innermost row field which corresponds to the processed cell.
Inherited from Pivot |
Row |
This member supports the internal infrastructure and is not intended to be used directly from your code.
Inherited from Pivot |
Row |
Gets the visual index of the row that contains the processed cell.
Inherited from Pivot |
Row |
Gets the type of the cell’s row header.
Inherited from Pivot |
Selected |
Gets whether the processed cell is selected.
Inherited from Pivot |
Source |
Gets or sets a reference to the object that raised the event.
Inherited from Routed |
Summary |
Gets the type of summary calculated in the current cell.
Inherited from Pivot |
Summary |
Gets the summary value currently being processed.
Inherited from Pivot |
Value |
Gets the processed cell’s value.
Inherited from Pivot |
The event data class exposes the following methods:
Method | Description |
---|---|
Create |
Returns a list of records used to calculate a value for the current cell.
Inherited from Pivot |
Create |
Returns a list of records used to calculate a summary value for the current cell. Allows you to specify the columns to return.
Inherited from Pivot |
Create |
Returns a list of records used to calculate a summary value for the current cell. Allows you to specify the columns and limit the number of records to return.
Inherited from Pivot |
Create |
Obsolete. In OLAP mode, returns a list of records used to calculate a summary value for the current cell. Allows you to specify the columns to be returned.
Inherited from Pivot |
Create |
Obsolete. In OLAP mode, returns a list of records used to calculate a summary value for the current cell. Allows you to specify the columns and limit the number of records to be returned.
Inherited from Pivot |
Create |
Obsolete. In server mode, returns a list of records used to calculate a summary value for the current cell. Allows you to specify the columns to be returned.
Inherited from Pivot |
Create |
Obsolete. In server mode, returns a list of records used to calculate a summary value for the current cell. Allows you to specify the columns and limit the number of records to be returned.
Inherited from Pivot |
Create |
Returns a summary data source.
Inherited from Pivot |
Get |
Returns a cell value calculated for the current column and row field values, against the specified data field.
Inherited from Pivot |
Get |
Returns a cell value by the column and row indexes.
Inherited from Pivot |
Get |
Returns a cell value calculated for the specified column and row field values, against the specified data field.
Inherited from Pivot |
Get |
Returns an array of column fields which correspond to the processed cell.
Inherited from Pivot |
Get |
Returns a Column Grand Total value calculated for the current row field values, against the specified data field.
Inherited from Pivot |
Get |
Returns a Column Grand Total value calculated for the specified row field values, against the specified data field.
Inherited from Pivot |
Get |
Returns the specified column or row field’s value for the cell, addressed by its zero-based index in the Data Area.
Inherited from Pivot |
Get |
Returns the value of the specified column or row field which identifies the column/row in which the processed cell resides.
Inherited from Pivot |
Get |
Gets the Grand Total for the specified field.
Inherited from Pivot |
Get |
Returns the value of the cell in the same row but in the next column.
Inherited from Pivot |
Get |
Returns the value of the cell in the next row.
Inherited from Pivot |
Get |
Returns the value of the cell in the same row, but in the previous column.
Inherited from Pivot |
Get |
Returns the value of the cell in the previous row.
Inherited from Pivot |
Get |
Returns an array of row fields that correspond to the processed cell.
Inherited from Pivot |
Get |
Returns a Row Grand Total value calculated for the current column field values, against the specified data field.
Inherited from Pivot |
Get |
Returns a Row Grand Total value calculated for the specified column field values, against the specified data field.
Inherited from Pivot |
Invoke |
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 Routed |
Is |
Indicates whether the specified field’s value that represents a row or column header of the processed cell is expanded.
Inherited from Pivot |
Is |
Gets whether the value of the specified column or row field can be retrieved for the current cell by the Pivot |
Is |
Indicates whether the processed data cell resides within the “Others” row/column when the Top N Value feature is enabled.
Inherited from Pivot |
On |
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 Routed |
#Remarks
The CellDoubleClick
event occurs when any cell contained within the Data Area, is double-clicked. The event parameter contains properties that allow you to identify the row and column in which the processed cell resides, the data field to which the cell corresponds, whether the cell is selected or focused, etc.
#Example: How to Display Underlying (Drill-Down) Records
This example demonstrates how to obtain the records from the control’s underlying data source for a particular cell. Double-click a cell to invoke a form that contains a grid with the underlying data.
<Window
x:Class="HowToObtainUnderlyingData.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core"
xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid"
xmlns:dxmvvm="http://schemas.devexpress.com/winfx/2008/xaml/mvvm"
xmlns:dxpg="http://schemas.devexpress.com/winfx/2008/xaml/pivotgrid"
xmlns:local="clr-namespace:HowToObtainUnderlyingData"
Width="776"
Height="419"
DataContext="{dxmvvm:ViewModelSource Type=local:ViewModel}"
Title="Get Underlying Data Example">
<dxmvvm:Interaction.Behaviors>
<dx:DialogService Name="DrillDownTemplate">
<dx:DialogService.DialogStyle>
<Style TargetType="dx:DXDialogWindow">
<Setter Property="Height" Value="400" />
<Setter Property="Width" Value="600" />
<Setter Property="ShowIcon" Value="False" />
<Setter Property="ShowInTaskbar" Value="False" />
<Setter Property="WindowStyle" Value="ToolWindow" />
</Style>
</dx:DialogService.DialogStyle>
<dx:DialogService.ViewTemplate>
<DataTemplate>
<dxg:GridControl ItemsSource="{Binding DrillDownDataSource}">
<dxg:GridControl.Columns>
<dxg:GridColumn FieldName="OrderID" />
<dxg:GridColumn FieldName="OrderDate" />
<dxg:GridColumn FieldName="ProductName" />
<dxg:GridColumn FieldName="ExtendedPrice" Header="Price" />
</dxg:GridControl.Columns>
</dxg:GridControl>
</DataTemplate>
</dx:DialogService.ViewTemplate>
</dx:DialogService>
</dxmvvm:Interaction.Behaviors>
<Grid>
<dxpg:PivotGridControl x:Name="pivot" DataSource="{Binding DataSource}" RowTreeWidth="170"
DataProcessingEngine="Optimized">
<dxpg:PivotGridControl.InputBindings>
<KeyBinding
Key="Enter"
Command="{Binding ShowDrillDownDataCommand}"
CommandParameter="{Binding SelectedCellInfo, ElementName=pivot}" />
</dxpg:PivotGridControl.InputBindings>
<dxmvvm:Interaction.Triggers>
<dxmvvm:EventToCommand
Command="{Binding ShowDrillDownDataCommand}"
EventName="CellDoubleClick"
PassEventArgsToCommand="True">
<dxmvvm:EventToCommand.EventArgsConverter>
<dxpg:EventArgsToCellInfoConverter />
</dxmvvm:EventToCommand.EventArgsConverter>
</dxmvvm:EventToCommand>
</dxmvvm:Interaction.Triggers>
</dxpg:PivotGridControl>
</Grid>
</Window>
using DevExpress.Mvvm;
using DevExpress.Mvvm.DataAnnotations;
using DevExpress.Mvvm.POCO;
using DevExpress.Xpf.PivotGrid;
using System.Data;
using System.Data.SQLite;
namespace HowToObtainUnderlyingData {
[POCOViewModel]
public class ViewModel {
public DataTable DataSource { get; } = new DataTable();
protected ViewModel() {
using (SQLiteConnection conn = new SQLiteConnection(@"Data Source=nwind.db;")) {
conn.Open();
SQLiteCommand command = new SQLiteCommand("Select * from SalesPerson", conn);
SQLiteDataReader reader = command.ExecuteReader();
DataSource.Load(reader);
reader.Close();
}
}
public void ShowDrillDownData(CellInfo cellInfo) {
this.GetService<IDialogService>().ShowDialog(MessageButton.OK, "Drill Down Results", cellInfo);
}
}
}