Lightweight and full-featured
.NET grid control

Includes .NET 8.0 support

Get free trial

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

Take Full Control

The .NET grid installs a palette component to aid designtime configuration.

Easy to Use

We think you'll find this is one of the easiest .NET 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 over 25 years; your satisfaction is of paramount importance to us.

A quick glance

Fully-featured data grid control

Easy-to-use data grid for WinForms, ASP.NET Core MVC
TeeGrid for .NET is a native c# grid control currently available for WinForms projects and NET Core, for use as an ASP.NET Core MVC data grid rendering to directly to native HTML & jsGrid grids.
The feature-packed 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.
The data grid control can be linked to any sort of database, like a Dataset, DataSource, arrays of objects or records, pure 'Virtual Mode' or any other source.

See examples in GitHub

ASP.NET Core MVC data grid

.NET data grid control

Master-detail view

Customisable master-detail presentation
The .NET 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.

Customisable rows and columns

Dragging, scrolling, resizing, adding or deleting rows & columns
The c# grid control 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.

.NET data grid control

.NET data grid control

Grid themes

Default themes for the grid view
The .NET grid Control 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.

Ticker component

Easily configurable grid ticker tool
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.

 Winforms data grid control

New and improved features

(Current build: 1.2023.1.23 , Other Version history)

  • TeeGrid.WinForm.dll (.NET Framework 4): Visual Studio NET 2010 and up.
  • TeeGrid.NetStandard.dll (.NET Standard 2.0): Visual Studio NET 2015 and up.
  • TeeGrid.NetCore (.NET Core 3.0): ASP.NET, Winform; Visual Studio NET 2019 and up.
  • TeeGrid.NET5.WinForm: Visual Studio NET 2019+, NET5, NET6, NET7, NET8
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, or they can be forced visible or hidden.

teeGrid1.ScrollBars.Horizontal.Visible = ScrollBarVisible.Hide; // Automatic, Show or Hide
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.

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 2023

Perpetual License. Includes one year subscription and unlimited runtime web server installations.


Perpetual License. Includes one year subscription and unlimited web server runtime installations.


Subscription Renewal for 2023

Subscriptions include all major and minor version releases and forum support

One Year support and major version upgrade protection subscription renewal
One Year support and major version upgrade protection subscription renewal
Additional options

.NET news

Previous .NET news

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