- Defining pivot columns using pivot items
- Synchronizing pivot columns
- Sorting pivot columns
Contact Support
Pivot Columns in Windows Forms Pivot Grid
21 Jan 20254 minutes to read
Pivot columns are defined by using the PivotItem object which holds the information needed for columns that appear in the pivot grid control.
Defining pivot columns using pivot items
To define a pivot column item, the following properties of PivotItem
object are used.
Property Name | Description | Type |
---|---|---|
Gets or sets the IComparer object used for sorting. If this value is null, then sorting will be performed under the assumption that this field is IComparable. | IComparer | |
Gets or sets the title you want to see in the header for this pivot item. | string | |
Gets or sets the property's mapping name. | string | |
Gets or sets the format item for the specified field. | string | |
Gets or sets the string you want to append to the pivot item's summary cells. | string |
Refer to the below code sample for adding pivot column item in the pivot grid control.
// Defining pivot item
PivotItem pivotItem = new PivotItem() { FieldHeader = "Country", FieldMappingName = "Country", TotalHeader = "Total" };
// Adding pivot column item to pivot grid
this.pivotGridControl1.PivotColumns.Add(pivotItem);
' Defining pivot item
Dim pivotItem As New PivotItem() With {.FieldHeader = "Country", .FieldMappingName = "Country", .TotalHeader = "Total"}
' Adding pivot column item to pivot grid
Me.pivotGridControl1.PivotColumns.Add(pivotItem)
Synchronizing pivot columns
To synchronize the newly added or modified pivot column items with the pivot grid control, the SynchronizePivotItems method will be used. This method will be invoked whenever the collection of pivot column items gets changed.
Sorting pivot columns
By default, the pivot grid control sorts the column data in ascending order. The sorting order can be changed by defining custom comparer and it needs to be assigned using the Comparer property of corresponding pivot item.
Refer to the below code sample to define comparer for sorting the column data in descending order.
public partial class Form1 : Form
{
public Form1()
{
......
this.pivotGridControl1.PivotColumns.Add(new PivotItem { FieldMappingName = "Country", Comparer = new ReverseOrderComparer() });
......
}
}
// Reverse order comparer for sorting the data in descending order
public class ReverseOrderComparer : IComparer
{
public int Compare(object x, object y)
{
if (x == null && y == null)
return 0;
else if (y == null)
return 1;
else if (x == null)
return -1;
else
return -x.ToString().CompareTo(y.ToString());
}
}
Partial Public Class Form1
Inherits Form
Public Sub New()
.....
Me.pivotGridControl1.PivotColumns.Add(New PivotItem With {.FieldMappingName = "Country", .Comparer = New ReverseOrderComparer()})
.....
End Sub
End Class
' Reverse order comparer for sorting the data in descending order
Public Class ReverseOrderComparer
Inherits IComparer
Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer
If x Is Nothing AndAlso y Is Nothing Then
Return 0
ElseIf y Is Nothing Then
Return 1
ElseIf x Is Nothing Then
Return -1
Else
Return -x.ToString().CompareTo(y.ToString())
End If
End Function
End Class