Lightweight and full-featured
data Grid control

BETA version

The Grid Control for NET offers a very fast data grid for your Visual Studio projects.

Take Full Control

TeeGrid installs a palette component to aid designtime configuration.

Easy to use

We think you'll find this is one of the easiest grids around for quick setup to get to and see your tabular data.

Priced Right For You

TeeGrid is agile and its price is light and nimble making it an easy fit in any project's budget.

Steema's commitment

Steema has been publishing code for more than twenty years; your satisfaction is of paramount importance to us.

A quick glance

Fully-featured Grid Control

The feature-packed NET data grid provides features such as sorting, grouping or filtering grid data, resizable columns, master-detail view, draggable selections, grid scrolling. These built-in features can be enabled just using a few property settings.
TeeGrid can be linked to any sort of database, like a TDataset, TDataSource, arrays of objects or records, pure 'Virtual Mode' or any other source.

See examples on GitHub

Master-Detail View

The Grid control offers master-detail data presentation. Any selected row in the master grid can be expanded to display its detail rows. Detail rows can be displayed in hierarchical data grid.

Rows and Columns

TeeGrid offers many features to manage the rows and columns sizing, formatting and more to your grid tables;
Locked columns allows to lock/fix a specified number of rows and columns. Any grid column can be locked to a grid edge (left or right).
Column dragging allows you to move or re-order grid columns using drag-and-drop. Select the column you want to move and drag the column's header to a different position in the grid.
Column resizing feature allows you to modify the column width in a grid.
Grid scrolling functionality lets you perform horizontal / vertical scrolling to display data using grid scrollbars or arrow keys, mouse-dragging or finger-touch.


TeeGrid is fully compatible with Visual Studio NET offering you the means to take common core code for gridding on Windows, Android and iOS/macOS.
TeeGrid ships with some default themes to optionally custom match to each environment.


The TeeGrid "Ticker" is a small component to automatically refresh grid cells when values are updated.
Options include FadeColors, Delay, Higher.Color, Lower.Color and RefreshSpeed.


New and improved features

(Current build: 1.2018.4.16, Other Version history)

Visual Studio NET
TeeGrid is capable of handling a very big number of cells. For example 1 billion cells ( 1000 columns by 1 million rows ).
The only limit is the available memory, (compile for the 64bit platform).
VirtualData or derived class to automatically create columns and provide cell values.
TeeGrid can be used to easily tabularise string lists:

StringsData tmp = new StringsData(2, 11);
tGrid1.Data = tmp;
tGrid1.Columns[0].Header.Text = "ABC" + Environment.NewLine + "Extra Content";
tGrid1.Columns[1].Header.Text = "DEF" + Environment.NewLine + "Subtext";
tmp[0, 3] = "Sample";
tmp[0, 5] = "Hello" + Environment.NewLine + "World";
tmp[0, 10] = "This is a long line" + Environment.NewLine + "of text with multiple" + Environment.NewLine + "lines";
tmp[1, 1] = "Several lines" + Environment.NewLine + "of text";
tmp[1, 6] = "More sample" + Environment.NewLine + "text";
tmp[1, 10] = "Another long line" + Environment.NewLine + "of text with multiple" + Environment.NewLine + "lines";
tGrid1.Columns.Add("My Column 1").Items.Add("Sub-Column 1")...
Any row can be expanded to show its detail sub-grid rows. The grid Data class must support master-detail relationships.
Automatic summary "grid bands" can be added to a header or footer, also for "detail" subgrids.

ColumnTotals Totals;
Totals= ColumnTotals.From(TeeGrid1.Data, TeeGrid1.Columns);

Totals.Calculation.Add( TeeGrid1.Columns["Quantity"], ColumnCalculation.Sum);

// Add band to grid footer

// Add also a band with total names
TeeGrid1.Footer.Add( TotalsHeader.CreateTotals( Totals ) );
Default class for cell rendering is CellRender. Other classes can be used or created to override the default behaviour, like for example to show check-boxes in columns with boolean (true/false) values:

TeeGrid1.Columns[7].Render= BooleanRender.Create;
TeeGrid1.Columns[0].FloatFormat= "0.###";
TeeGrid1.Columns[0].Visible= False;
TeeGrid1.Columns[0].Items[3].Expanded= False; // visible, but collapsed
TeeGrid1.Columns[0].Width.Automatic= False;
TeeGrid1.Columns[0].Width.Value= 40;
TeeGrid1.Columns[0].Width.Units= SizeUnits.Percent;
Dragging the left mouse button in a column header edge resizes it
Scrollbars are automatically displayed when necessary. In Firemonkey they can be customized:

Export to web table. Supports output to JSGrid tables.
Columns and sub-columns can be re-positioned:

TeeGrid1.Columns[2].Index= 0; // move 2nd column to first (left-most) position
TeeGrid1.Columns[0].Header.Text= "My Column";
TeeGrid1.Columns[0].Header.Format.Font.Color= Color.Red;
TeeGrid1.Header.Hover.Visible = true;
TeeGrid1.Header.Hover.Format.Brush.Color= Color.Green;
TeeGrid1.Indicator.Visible = true; // False to hide indicator
TeeGrid1.Indicator.Width= 20;
// selection
TeeGrid1.Selected.Column= TeeGrid1.Columns[3];
TeeGrid1.Selected.Row= 5;

// formatting
TeeGrid1.Selected.ParentFont= False;
TeeGrid1.Selected.Format.Font.Style = Steema.TeeGrid.Format.FontStyle.Bold;;
// range selection
TeeGrid1.Selected.Range.FromColumn= TeeGrid1.Columns[3];
TeeGrid1.Selected.Range.ToColumn= TeeGrid1.Columns[6];

TeeGrid1.Selected.Range.FromRow= 10;
TeeGrid1.Selected.Range.ToRow= 15;
TeeGrid1.ReadOnly= False;
TeeGrid1.Columns[0].ReadOnly= true;
TeeGrid1.Rows.RowLines.Visible= true;
TeeGrid1.Rows.RowLines.Size= 3;
TeeGrid1.Rows.RowLines.Color= Color.Skyblue;
Cell (or all cells in row) under mouse cursor can be highlighted:

TeeGrid1.Cells.Hover.Visible= true;
TeeGrid1.Cells.Hover.FullRow= true;
TeeGrid1.Cells.Hover.Format.Stroke.Size= 2;
For sub-pixel finetuning, Firemonkey only. VCL always rounds to integer pixels.

TeeGrid1.Header.Height.Value=124.3; // sub-pixels, decimals
TeeGrid1.Rows.Alternate.Brush.Visible= true;
TeeGrid1.Rows.Alternate.Brush.Color= Color.Lightcoral;
TeeGrid1.Rows.Alternate.Stroke.Visible= true;

New License of 2018

Perpetual License. Includes one year subscription

TeeGrid for NET

Additional options

.NET news

Previous .NET news

TeeGrid for .NET Beta Release

Steema is pleased to announce the availability of the first beta release of the teeGrid Grid Control for .NET.

April 16, 2018

Volume discounts

We offer discounts when purchasing more than one license. Discounts are as follows:

  • 2 Licenses: 5% discount
  • 5 Licenses: 20% discount
  • 10 Licenses: 25% discount

The volume discount will be automatically calculated if you are making your order online. You just need to enter the quantity of licenses you want to order. For special requirements, please contact us at

Perpetual Licenses and Subscriptions

Steema Licenses are perpetual and sold on a subscription basis. The subscription period is initially for 12 months, renewable annually and includes access to updates and support forums. Please see the Subscription licensing page for complete details.
When the subscription period expires you can optionally renew your subscription for an additional year at the renewal price. We will notify you via e-mail at least 30 days prior to the expiry date.
If your subscription has lapsed over 30 days, the renewal price will not apply and the cost will be that of a license upgrade price.

If you have a question or require more information, call us at +34 972 218 797 between 9:00h and 17:00h central european time or email