Click here to Skip to main content
15,352,915 members
Articles / Programming Languages / C#
Posted 24 Jun 2003


66 bookmarked

Enhanced DataGrid control

Rate me:
Please Sign up or sign in to vote.
4.20/5 (19 votes)
24 Jun 20032 min read
Extends DataGrid Functionalities

Sample Image - GridEx.jpg


This is an enhanced DataGrid that built in with Auto Search, Auto Column Sizing and Row Select features. In addition, it supports multiple Tablestyles binding to single DataTable. New events such as CurrentRowChanged and OnHeaderClick also have been included.


This component was created out of frustration with default datagrid controls. After searching around from web but could not find a Free datagrid control with the features that suit my needs. I decided to create one by myself. This is my first .NET component, feel free to give me feedbacks or comments so that I can learn something and improve my .NET skill. I hope this component is useful to those of you who are as frustrated as me.


AutoSearchEnable or disable auto search function in datagrid.
AutoSizeEnable or disable column auto sizing in datagrid.
RowSelectEnable or disable row select in datagrid.
CurrentStyeIndexGets or sets a value indicating current TableStyle. Default value is -1.
UseGridParentStyleGets or sets a value indicating whether TableStyles should follow the grid style.

OnHeaderClickRaises HeaderClicked event.
OnCurrentRowChangedRaises CurrentRowChanged event.

CurrentRowChangedOccurs when current row has changed.
HeaderClickedOccurs when grid header is clicked.

How to use AutoSearch in GridEx

Set AutoSearch property to true during design time or use the following code during runtime:-

this.gridEx1.AutoSearch = true;

During runtime, simple click on the header column that you want to perform search and then type in search value and GridEx will perform incremental search for you. You may use [Backspace] to delete char or [Escape] to clear search value. If you search on DateTime column type, a datetime input box will appear.

Image 2

Creating Multiple TableStyles

Create styles using datagrid TableStyles Editor. Set the style's MappingName to TableName of DataTable if you want GridEX to load this style first. If none of the styles has MappingName assigned, default style will be used.

Image 3

Changing TableStyles at Runtime

To change style at runtime, set CurrentStyleIndex to a valid TableStye index.

this.gridEx1.CurrentStyleIndex = 1;

Setting CurrentStyleIndex to -1 will tell GridEx to use default style.


AutoSearch only supports DataTable and DataView datasource. AutoSearch will be turned off automatically if you assign a DataSet to datagrid DataSource property.


I can be reached at


This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


About the Author

Web Developer
Malaysia Malaysia
No Biography provided

Comments and Discussions

GeneralCalender Cells Pin
sashdude1-Oct-08 7:39
Membersashdude1-Oct-08 7:39 
GeneralColumnName with a space Pin
KC5HHQ12-Jan-07 3:52
MemberKC5HHQ12-Jan-07 3:52 
GeneralDisable a column in datagrid Pin
Ndichuw Samuel21-Jun-06 1:05
MemberNdichuw Samuel21-Jun-06 1:05 
GeneralRe: Disable a column in datagrid Pin
KC5HHQ12-Jan-07 3:51
MemberKC5HHQ12-Jan-07 3:51 
GeneralRe: Disable a column in datagrid Pin
altaf sami4-Apr-08 19:15
Memberaltaf sami4-Apr-08 19:15 
QuestionHow i retrive data from Cell [modified] Pin
sachinjr14-Jun-06 0:40
Membersachinjr14-Jun-06 0:40 
AnswerRe: How i retrive data from Cell Pin
danish_bear20-Jun-06 9:32
Memberdanish_bear20-Jun-06 9:32 
GeneralRe: How i retrive data from Cell Pin
KC5HHQ12-Jan-07 3:54
MemberKC5HHQ12-Jan-07 3:54 
AnswerRe: How i retrive data from Cell Pin
altaf sami4-Apr-08 19:19
Memberaltaf sami4-Apr-08 19:19 
GeneralAutosize only works with DataSets, DataTables, and DataViews but not with DataRelations Pin
Josef Meile8-May-06 9:37
MemberJosef Meile8-May-06 9:37 
GeneralAutosearch Pin
u999nik6-Nov-03 11:15
Memberu999nik6-Nov-03 11:15 
GeneralQuerying the database Pin
sayyedabdulrahim6-Sep-03 5:35
Membersayyedabdulrahim6-Sep-03 5:35 
I am a beginner ,Actaully i have a datagrid in winforms which adds updates new rows and changes made to the existing rows . Now i want to give the user a facility to query the datagrid.If the user clicks on query button , the datagrid should be cleared and allow the user to enter data in any cell and retrieve data as per the cell info entered , if data does not exist then return an error message.I am using SQL Server default database PUBS and tablename: authors
Pls note i want to search the database not just the datagrid.
The search query sould return all the matching results from the database

could anybody help me pls

Thanks in advance

my email is, u could reply me there too


I am a beginner in c# and wish to learn more thru the forum
GeneralWhy "ReadOnly" Pin
scampbell15-Sep-03 17:17
Memberscampbell15-Sep-03 17:17 
GeneralProblem with AutoSize Pin
ikos18-Jul-03 5:47
Memberikos18-Jul-03 5:47 
GeneralAnnouncement !!! Pin
cctuan25-Jun-03 15:12
Membercctuan25-Jun-03 15:12 
GeneralError running demo project Pin
Drew Stainton25-Jun-03 7:43
MemberDrew Stainton25-Jun-03 7:43 
GeneralRe: Error running demo project Pin
Michael Choong25-Jun-03 14:32
MemberMichael Choong25-Jun-03 14:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.