BandedGridView Class

Displays data in a tabular form and allows grouping of columns into bands.

Namespace: DevExpress.XtraGrid.Views.BandedGrid

Assembly: DevExpress.XtraGrid.v20.1.dll

Declaration

public class BandedGridView :
    GridView
Public Class BandedGridView
    Inherits GridView

Related API Members

The following members accept/return BandedGridView objects:

Remarks

The BandedGridView class provides the same data representation facilities as its ancestor GridView class. Additionally, Banded Grid Views allows you to arrange columns into bands. Visually, bands are represented by their headers which are displayed over headers of columns belonging to the band. Bands do not only provide visual information structuring. End-users can drag band headers to rearrange bands or to hide them, thus performing operations on a group of columns at once.

Bands can be arranged into a tree. The root band collection can be customized using the View's BandedGridView.Bands property. Each band holds its child band collection in the GridBand.Children property. Columns should be added to a band's GridBand.Columns collection to be displayed within that band. Please refer to the Banded Grid Views topic for additional information.

The image below shows a sample Banded Grid View.

BandedGridView - Overview

Examples

This example shows how to create a GridControl, while presenting its underlying data using a banded grid format (BandedGridView). The example creates three bands (Main, Address and Phone), adds columns to the bands and customizes the background color for the third band and its columns.

BandedGridView-example

using DevExpress.XtraGrid;
using DevExpress.XtraGrid.Views.BandedGrid;

GridControl gridControl1 = new GridControl();
gridControl1.Parent = this;
gridControl1.Dock = DockStyle.Fill;

BandedGridView bandedGridView1 = new BandedGridView(gridControl1);
GridBand gridBandMain = new GridBand();
GridBand gridBandAddress = new GridBand();
GridBand gridBandPhone = new GridBand();
BandedGridColumn colCity = new BandedGridColumn();
BandedGridColumn colCompanyName = new BandedGridColumn();
BandedGridColumn colContactName = new BandedGridColumn();
BandedGridColumn colCountry = new BandedGridColumn();
BandedGridColumn colPhone = new BandedGridColumn();
BandedGridColumn colFax = new BandedGridColumn();

gridControl1.DataSource = this.customersBindingSource;
gridControl1.ViewCollection.Add(bandedGridView1);
gridControl1.MainView = bandedGridView1;

bandedGridView1.Bands.AddRange(new GridBand[] {gridBandMain,gridBandAddress,gridBandPhone});
bandedGridView1.Columns.AddRange(new BandedGridColumn[] {colCompanyName,colContactName,colCity,colCountry,colPhone,colFax});

colCompanyName.FieldName = "CompanyName";
colCompanyName.Visible = true;
colCompanyName.Width = 94;

colContactName.FieldName = "ContactName";
colContactName.Visible = true;
colContactName.Width = 74;

colCountry.FieldName = "Country";
colCountry.Visible = true;
colCountry.Width = 67;

colCity.FieldName = "City";
colCity.Visible = true;
colCity.Width = 57;

colPhone.AppearanceCell.BackColor = System.Drawing.Color.PowderBlue;
colPhone.AppearanceCell.Options.UseBackColor = true;
colPhone.AppearanceHeader.BackColor = System.Drawing.Color.PowderBlue;
colPhone.AppearanceHeader.Options.UseBackColor = true;
colPhone.FieldName = "Phone";
colPhone.Visible = true;
colPhone.Width = 81;

colFax.AppearanceCell.BackColor = System.Drawing.Color.PowderBlue;
colFax.AppearanceCell.Options.UseBackColor = true;
colFax.AppearanceHeader.BackColor = System.Drawing.Color.PowderBlue;
colFax.AppearanceHeader.Options.UseBackColor = true;
colFax.FieldName = "Fax";
colFax.Visible = true;
colFax.Width = 84;

gridBandMain.Caption = "Main";
gridBandMain.Columns.Add(colCompanyName);
gridBandMain.Columns.Add(colContactName);
gridBandMain.VisibleIndex = 0;
gridBandMain.Width = 168;

gridBandAddress.Caption = "Address";
gridBandAddress.Columns.Add(colCountry);
gridBandAddress.Columns.Add(colCity);
gridBandAddress.VisibleIndex = 1;
gridBandAddress.Width = 124;

gridBandPhone.AppearanceHeader.BackColor = System.Drawing.Color.LightBlue;
gridBandPhone.AppearanceHeader.Options.UseBackColor = true;
gridBandPhone.Caption = "Phone";
gridBandPhone.Columns.Add(colPhone);
gridBandPhone.Columns.Add(colFax);
gridBandPhone.VisibleIndex = 2;
gridBandPhone.Width = 165;

bandedGridView1.OptionsCustomization.AllowChangeColumnParent = false;
See Also