xtrareports-devexpress-dot-xtrareports-dot-ui-dot-pivotgrid-8c0b6935.md
Represents a field collection for the XRPivotGrid control.
Namespace : DevExpress.XtraReports.UI.PivotGrid
Assembly : DevExpress.XtraReports.v25.2.dll
NuGet Package : DevExpress.Reporting.Core
public class XRPivotGridFieldCollection :
PivotGridFieldCollectionBase
Public Class XRPivotGridFieldCollection
Inherits PivotGridFieldCollectionBase
The following members return XRPivotGridFieldCollection objects:
The XRPivotGridFieldCollection encapsulates a field collection for the XRPivotGrid control. Use the control’s XRPivotGrid.Fields property to access this collection (add, remove or access individual items). A field is represented by the XRPivotGridField class.
The following code generates a cross-tab report by utilizing the XRPivotGrid control.
Before running this code, add all necessary assemblies to the project’s References list (e.g., DevExpress.XtraPivotGrid.v25.2.dll and DevExpress.PivotGrid.v25.2.Core.dll ).
Next, add a button ( button1 ) to the application’s form and handle its Click event as follows.
using System;
using System.Data;
using System.Data.OleDb;
using System.Windows.Forms;
using DevExpress.DataAccess.ConnectionParameters;
using DevExpress.DataAccess.Sql;
using DevExpress.XtraPivotGrid;
using DevExpress.XtraReports.UI;
using DevExpress.XtraReports.UI.PivotGrid;
// ...
private void button1_Click(object sender, EventArgs e) {
// Create a cross-tab report.
XtraReport report = CreateReport();
// Show its Print Preview.
report.ShowPreview();
}
private XtraReport CreateReport() {
// Create a blank report.
XtraReport crossTabReport = new XtraReport();
// Create a detail band and add it to the report.
DetailBand detail = new DetailBand();
crossTabReport.Bands.Add(detail);
// Create a pivot grid and add it to the Detail band.
XRPivotGrid pivotGrid = new XRPivotGrid();
detail.Controls.Add(pivotGrid);
// Create a data source
SQLiteConnectionParameters connectionParameters = new SQLiteConnectionParameters() {
FileName = "nwind.db",
Password = null
};
SqlDataSource ds = new SqlDataSource(connectionParameters);
// Create an SQL query to access the SalesPerson view.
CustomSqlQuery query = new CustomSqlQuery();
query.Name = "SalesPerson";
query.Sql = "SELECT CategoryName, ProductName, Country, [Sales Person], Quantity, [Extended Price] FROM SalesPerson";
ds.Queries.Add(query);
// Bind the pivot grid to data.
pivotGrid.DataSource = ds;
pivotGrid.DataMember = "SalesPerson";
// Generate pivot grid's fields.
XRPivotGridField fieldCategoryName = new XRPivotGridField("CategoryName", PivotArea.RowArea);
XRPivotGridField fieldProductName = new XRPivotGridField("ProductName", PivotArea.RowArea);
XRPivotGridField fieldCountry = new XRPivotGridField("Country", PivotArea.ColumnArea);
XRPivotGridField fieldSalesPerson = new XRPivotGridField("Sales Person", PivotArea.ColumnArea);
XRPivotGridField fieldQuantity = new XRPivotGridField("Quantity", PivotArea.DataArea);
XRPivotGridField fieldExtendedPrice = new XRPivotGridField("Extended Price", PivotArea.DataArea);
// Add these fields to the pivot grid.
pivotGrid.Fields.AddRange(new XRPivotGridField[] {fieldCategoryName, fieldProductName, fieldCountry,
fieldSalesPerson, fieldQuantity, fieldExtendedPrice});
return crossTabReport;
}
Imports System
Imports System.Data
Imports System.Data.OleDb
Imports System.Windows.Forms
Imports DevExpress.DataAccess.ConnectionParameters
Imports DevExpress.DataAccess.Sql
Imports DevExpress.XtraPivotGrid
Imports DevExpress.XtraReports.UI
Imports DevExpress.XtraReports.UI.PivotGrid
' ...
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles button1.Click
' Create a cross-tab report.
Dim report As XtraReport = CreateReport()
' Show its Print Preview.
report.ShowPreview()
End Sub
Private Function CreateReport() As XtraReport
' Create a blank report.
Dim crossTabReport As New XtraReport()
' Create a detail band and add it to the report.
Dim detail As New DetailBand()
crossTabReport.Bands.Add(detail)
' Create a pivot grid and add it to the Detail band.
Dim pivotGrid As New XRPivotGrid()
detail.Controls.Add(pivotGrid)
' Create a data source
Dim connectionParameters As New SQLiteConnectionParameters() With {
.FileName = "nwind.db",
.Password = Nothing
}
Dim ds As New SqlDataSource(connectionParameters)
' Create an SQL query to access the SalesPerson view.
Dim query As New CustomSqlQuery()
query.Name = "SalesPerson"
query.Sql = "SELECT CategoryName, ProductName, Country, [Sales Person], Quantity, [Extended Price] FROM SalesPerson"
ds.Queries.Add(query)
' Bind the pivot grid to data.
pivotGrid.DataSource = ds
pivotGrid.DataMember = "SalesPerson"
' Generate pivot grid's fields.
Dim fieldCategoryName As New XRPivotGridField("CategoryName", PivotArea.RowArea)
Dim fieldProductName As New XRPivotGridField("ProductName", PivotArea.RowArea)
Dim fieldCountry As New XRPivotGridField("Country", PivotArea.ColumnArea)
Dim fieldSalesPerson As New XRPivotGridField("Sales Person", PivotArea.ColumnArea)
Dim fieldQuantity As New XRPivotGridField("Quantity", PivotArea.DataArea)
Dim fieldExtendedPrice As New XRPivotGridField("Extended Price", PivotArea.DataArea)
' Add these fields to the pivot grid.
pivotGrid.Fields.AddRange(New XRPivotGridField() {fieldCategoryName, fieldProductName, fieldCountry, fieldSalesPerson, fieldQuantity, fieldExtendedPrice})
Return crossTabReport
End Function
Object CollectionBase PivotGridFieldCollectionBase XRPivotGridFieldCollection
See Also