Click here to Skip to main content
15,892,161 members
Articles / Programming Languages / C#

How to Add Custom Checkbox Column to DataGridView in Windows Forms

Rate me:
Please Sign up or sign in to vote.
2.23/5 (3 votes)
26 Feb 2014CPOL 26.5K   3   2
How to add a custom Checkbox column to an existing DataGridView in Windows Forms

In this post, we will see how we can add a custom Checkbox column to an existing DataGridView in Windows Forms. Generally, when you assign a data source to the DataGridView and the data source contains a “bit” column or “bool” column, DataGridView automatically converts it into a Checkbox column. However, at times, we need to provide an extra checkbox column to the end-user so that they can select/un-select records using the same. This post will help you add a custom checkbox to your DataGridView.

This post assumes the name of the DataGridView control as gridRecords and LoadGrid() function assigns the data source to the DataGridView.

C#
private void LoadGrid()
{
    gridRecords.Columns.Clear();
    gridRecords.DataSource = GetDataFromDatabase();
    if(gridRecords.Columns.Count > 0) // Add Checkbox column only when records are present.
          AddCheckBoxColumn();
}
private void AddCheckBoxColumn()
{
    DataGridViewCheckBoxColumn doWork = new DataGridViewCheckBoxColumn();
    doWork.Name = "Select";
    doWork.HeaderText = "Select";
    doWork.FalseValue = 0;
    doWork.TrueValue = 1;
    gridRecords.Columns.Insert(0, doWork);
}

In the above code, we first set the DataSource of datagridview to the data that has been brought from DB. Before assigning the DataSource, we ensure that we clear the column collection of the DataGridView so that the checkbox column is not added multiple times. Once the DataSource is set, we check for column count and call a function that adds the custom checkbox to the beginning of the DataGridView.

Hope you like this post.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Founder Rebin Infotech
India India
A passionate developer with over 10 years of experience and building my software company code by code. Experience withMS Technologies like .Net | MVC | Xamarin | Sharepoint | MS Project Server and PhP along with open source CMS Systems like Wordpress/DotNetNuke etc.

Love to debug problems and solve them. I love writing articles on my website in my spare time. Please visit my Website for more details and subscribe to get technology related tips/tricks. #SOreadytohelp

Comments and Discussions

 
Generalabout size of that checkbox column Pin
Member 1057144522-Aug-14 20:09
Member 1057144522-Aug-14 20:09 
GeneralRe: about size of that checkbox column Pin
Nitesh Kejriwal22-Aug-14 23:18
professionalNitesh Kejriwal22-Aug-14 23:18 
You can use the Width property of DataGridViewColumn class. IN above example, write the below code in AddCheckBoxColumn() function -

C#
doWork.Width=100;

Nitesh K Luharuka
Consultant
http://www.niteshluharuka.com

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.