MY ACCOUNT  |  LOGIN

Sales: 1-888-936-8638

ORDER ONLINE >

 

  


  Windows Forms
      Products
       UI Products
   Essential Grid
   Essential Tools
   Essential Chart
   Essential Diagram
   Essential Edit
   Essential HTMLUI
   Essential Schedule
       Back Office Products
   Essential PDF
   Essential XlsIO
   Essential DocIO
   Essential Calculate
   Essential Grouping
       Add-ons
   CAB Add-on
   QTP Add-on
    Version History
    Free Trial
    Order Online
    What's New
    Development Build
    Roadmap
    System Requirements




Grid Grouping Support

Essential Grid offers flexible support for grouping both flat and hierarchical datasources. It supports expressions fields, filters, multi-column sorting, grouping, nested tables/hierarchies, and custom summaries.

Grouping Custom Group Layout
ADO.NET Relation Hierarchical Display
Foreign Key Relation Calculate Summary
Filter Expression Field
Sort Group By Column
Preview Rows Multiple Stacked Headers
Base Style Custom Cell Range
Error Indicator Grid Grouping Control Style
Add New Record Parent Record Synchronization
Record Category Synchronization Drag-and-Drop Column Header
Multiple Rows and Columns per Record Key Navigation
Cell Data Serialization Schema Serialization
MS Excel Export MS Word Export
Grid Optimization

Grouping

Essential Grid's GridGroupingControl can quickly provide custom views for non-nested data tables. Users can filter, group, sort and summarize data with summary rows. You can also add custom formula columns that can be used in grouping and summaries. The grouping architecture is flexible and can be used with any IList object with items having public properties.


GridGroupingControl showing non-grouped (flat) data

Grid Grouping Control with Flat(Non-grouped) Data

Users can group and sort multiple columns. When edited, affected group, sort or filter will be automatically adjusted.


GridGroupingControl showing grouped data

Grid Grouping Control with Grouped Data

Custom Group Layout

It is possible to customize the layout of groups. You can add a Custom Section for each group and display the Summary Section above the details.


Custom Section in Group

Custom Group Layout-Custom Section in Group

ADO.NET Relation

Any ADO.NET dataset can be displayed without any configuration using the Grid Grouping Control. The grid will automatically extract all column and relational information from the dataset and display them.


A simple hierarchical display in Essential Grid

Simple Hierarchical Display

Hierarchical Display

The GridGroupingControl supports data with hierarchical relationships and nested tables. Each record in a hierarchical grid can have multiple nested relations. Users may expand the record to show the nested relations. Each nested table can be expanded individually by clicking on the plus-minus button next to the caption text. Changes to any data element automatically updates the grid and positions the modified records relatively. Users may add new rows at any level.


GridGroupingControl showing hierarchical data

GridGroupingControl showing hierarchical data

Foreign Key Relation

Foreign key relations can be defined to control the display values in Grid Grouping Control. A column named CompanyIDcan be replaced with CompanyName in a transparent manner. Multi-column drop-downs listing choices can also be edited and displayed.


GridGroupingControl showing an editable multicolumn

Grid Grouping Control-Editable Multi-column Drop-down Based on Foreign Key Table

Calculate Summary

The Grid Grouping Control lets users add one or more summary rows to each group. Record modification works in complete synchronization with summaries. The calculation of summary values is fast with just O(log2 n) operations ('n' being the number of records in the table)due to the use of balanced tree structures in the grouping engine. Grouping has several built-in functions such as:


* Int32Aggregate, DoubleAggregate (Count, Min, Max, Sum)
* StringAggregate (MaxLength, Count)
* Count
* DistinctCount (Count, Values array)
* Vector (Values)
* DoubleVector (statistical methods: Median, Min, Max, 25% Quartile, 75% Quartile)

The grouping engine supports summaries that operate on vectors such as Distinct Count, Median, 25% and 75% Quartile. Users can also add custom summaries like weighted averages.


GridGroupingControl showing summaries for each group


Grid Grouping Control Displaying Summary For Each Group

Summary can be included in the group caption rows and the display sorted by summary values.


GridGroupingControl sorted by summaries in group captions

Grid Grouping Control Sorted by Summary in Group Captions

Filter

A subset of records that satisfy user defined criteria can be extracted and displayed using Filters. A Filter Bar can be included in the grid to filter by selected-option from a drop-down list. It is also possible to adopt a custom filter dialog by customizing the 'Custom' option in the filter-bar cell's drop-down.


GridGroupingControl showing dropped FilterBar cell

Grid Grouping Control-Dropped Filter Bar Cell

Dynamic Filter
This feature replaces the default filter bar with a custom filter bar that displays filtered results as you type each and every character. It has an user-friendly UI where in you can apply any compare operator with a single button click.


GridGroupingControl showing dropped FilterBar cell

Grid Grouping Control-Dynamic Filter

Expression Field

Expression field facilitates the inclusion of a column with formula expression. The grouping engine comes with its own extensible formula engine for this purpose. Expression fields can be used in records just like a regular field. Users can calculate summary, group, sort or create filters based on expression fields.

The winning and losing columns have been created using expression fields in the illustration below:


The Totals Expression

Grid Columns Created Using Expression Fields

Sort

Grid contents can be sorted based on values of any column. You can perform custom sorting on a column by providing an IComparer object for that column.


Table sorted alphabetically by product name

Column 'Contact Name' Sorted Alphabetically

The sorting can be applied to multiple columns and the sort order displayed in column headers.


Table sorted by multiple columns

Sorted by Multiple Columns

Group By Column

Each hierarchical level can be grouped by the columns of its table. This feature is illustrated below:


Hierarchies with grouping

Group By Column

Preview Rows

Preview Rows can be enabled to display memo fields or notes for a given group or record. It is possible to add a preview section for each group or record.


Preview Rows

Preview Rows

Multiple Stacked Headers

Additional header rows that span across visible grid columns in a stacked fashion can be created for the Grid Grouping Control. Columns can be grouped under each header row and these grouped columns get re-arranged by grouping headers. Complete drag-drop support is available for these header rows.


Multiple stacked Headers

Multiple Stacked Headers

Base Style

The appearance of the grid's grouping elements can be customized using base styles. Each element in the grouping display is associated with a base style that defines its appearance.



Group Level Styling

Group-Level Styling


Table Level Styling

Table-Level Styling

Custom Cell Range

The API provides numerous options to customize cell ranges and let you specify custom covering of individual cells across multiple cells. Covering an image field cell across all records in it's category is illustrated belo

GridGroupingControl with custom cell ranges and vertical text

Grid Grouping Control with Custom Cell Ranges and Vertical Text

Group-indent cells are also covered and the Category text is specified to draw rotated.

Error Indicator

when saving a record, if constraints are violated, the affected column is displayed with a red marker. Hovering the mouse pointer over the error indicator will display a ToolTip and provide information explaining the constraint violation.


A red marker indicates a constraint violation

Red Marker Indicating Constraint Violation

Grid Grouping Control Style

The appearance of the Grid Grouping Control can be enhanced by applying one of the available MS Office 2003 and 2007 styles.


Office 2007 Blue Skin

MS Office 2007 Blue


Office 2007 Black Skin

MS Office 2007 Black


Office 2007 Silver Skin

MS Office 2007 Silver


Office 2007 Skin

MS Office 2003

Add New Record

An Add New Record row option can be displayed at the top or bottom of the table. Alternatively, Add New Record can be displayed for each group.

The Add New Record works much like the current record. Users save changes with the ENTER key, cancel changes with the ESC key or release the record. The record will be sorted into the existing recordset and the record's parent group will be expanded.

Constraints are checked while saving the record. The group's category will be assigned as default values into the Add New Record when the user begins typing into the record for a group.

AddNew records displayed for each group


Add New Record Displayed for Each Group


Parent Record Synchronization

When a user changes the foreign key value of a record in a nested table, the Grid Grouping Control will automatically move the record to its new parent table and scroll the table into view.

Changing the 'SupplierID' of a Product moves it to its respective Supplier group as illustrated below:


Changing the foreign key value of a record in a nested

Change Foreign Key Value of Record in a Nested Table


 The record has been inserted into its new parent table


Record Inserted into New Parent Table

Record Category Synchronization

When the record column used to categorize the table into groups is changed, the grid will automatically insert the record into the new group category and scroll the group into view. If necessary, a new group is inserted and/or the old group is removed from the table. changin the 'Country' of one record is illustrated below:

Changing the category of a record

Change Category of Record

After the change, the record has been inserted under the new group and scrolled into view.


The record has been inserted into its new group

Record Inserted into New Group

Drag-and-Drop Column Header

The end user can customize the grid display by performing a drag-and-drop of column header cells.

When the header cell is dropped on a different column, the visible order of columns will be rearranged.

Dragging a header cell onto the group drop area

Drag Column Header Cell to a Different Column

When the cell is dropped on the group drop area, the table will be grouped by the column.

Dragging a header cell onto the group drop area

Drag Header Cell on Group Drop Area

Multiple Rows and Columns per Record

A record can span multiple rows or columns. In the illustration below, the 'ID' and 'Photo' columns include records that occupy multiple rows and the 'Address' Column includes rows that occupy multiple columns:


Multiple rows per record display

Multiple Rows per Record Display

Key Navigation

The Grid Grouping Control uses the TAB key to navigate to various cells in the Grid. Alternatively, any other key can also be utilized for this purpose.

Cell Data Serialization

Serialization is the process of saving the state of an object by converting it into a stream of bytes. Grid data can be serialized in one of the following three ways:

  • Serialize cell content-grid cell contents can be serialized into code
  • Serialize Range Style - Range style provides options for styling the grid cells. These cell range styles can also be serialized into code.
  • Serialize to ResX Files-grid cell contents can be serialized to ResX files

Schema Serialization

Grid Grouping Control supports XML schema serialization. Grid with XML serialized schema is illustrated below:

GridGroupingControl Serialization

Serialized XML Schema for Grid

MS Excel Export

The Grid Grouping Control's contents can be exported to an MS Excel file. The Grid Grouping Control provides options to export Style, Borders, Preview Rows and Groups. The conversion can be done in two ways: export entire control's contents or just visible contents.


GridGroupingControl to be Exported

Grid Grouping Control to be Exported


GridGroupingControl's Contents exported to Excel

Grid Grouping Control's Contents Exported to MS Excel

MS Word Export

The Grid Grouping Control's contents can be exported to an MS Word file. You can be able to export nested tables as well. It also supports drawing custom header and footer.


GridGroupingControl to be Exported

Grid Grouping Control to be Exported


GridGroupingControl's Contents exported to Excel

Grid Grouping Control's Contents Exported to MS Word

Grid Optimization

Grid Grouping Control is optimized to handle high refresh and update scenarios. Hooks were added to the Grid Grouping Control and they allow a more optimized ListChanged event logic to be plugged in. ListChanged logic is integrated into the main code base so that you can switch between old and new, more optimized code with only a few property settings. When frequent updates are being made in the grid, this has an optimal impact on the performance of the Grid Grouping Control, enabling minimal CPU usage.


GridGroupingControl Optimizations

Grid Grouping Control Optimization

© 2001-2009 Copyright Syncfusion Inc. All rights reserved.  |  Privacy Policy  |  Contact  |  Sitemap  |