Add Button,Combobox,Checkbox,Image,Link Columns to DataGridView in C# Windows Form

0
7802

DataGridView is used to display data in tabular structure in windows forms, DataGridView control is customizable and contains lot more events than any other control. The basic elements of  DataGridView is Rows,Columns,Cell, the default DataGridView cell type is   textbox. The following code explains how to add Button,Checkbox,Combobox,Image,Link column to DataGridView.

Create a New Windows Form Application
File -> New -> Project -> Windows Forms Application

Setup your Project with SQL Connection
Form1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace Dgvalloperations
{
public partial class Form1 : Form
{
SqlConnection con = new SqlConnection("Data Source=PROJECT-SERVER;Initial Catalog=Dbname;Persist Security Info=True;User ID=sa;Password=admin@123");
SqlCommand cmd = new SqlCommand();

public Form1()
{
InitializeComponent();
}
}
}

Add Button Column to DataGridView

private void btAddBt_Click(object sender, EventArgs e)
{
DataGridViewButtonColumn button = new DataGridViewButtonColumn();
dataGridView1.Columns.Add(button);
button.HeaderText = "Accept";
button.Text = "Accept";
button.Name = "button";
button.UseColumnTextForButtonValue = true;
}


Add Cell Click Event to Perform DataGridView Button Action

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (dataGridView1.Columns.Contains("button") && e.ColumnIndex == dataGridView1.Columns["button"].Index)//Specify which column contains Button in DGV
{
MessageBox.Show("Row "+(e.RowIndex + 1)+" Of " +(e.ColumnIndex + 1) + " th Column button clicked ");
}
}


Add ComboBox Column to DataGridView

private void btCmb_Click(object sender, EventArgs e)
{
DataGridViewComboBoxColumn combobox = new DataGridViewComboBoxColumn();
combobox.HeaderText = "Select Country";
combobox.Name = "combobox";
combobox.Items.Add("India");
combobox.Items.Add("UAE");
combobox.Items.Add("USA");
combobox.Items.Add("England");
dataGridView1.Columns.Add(combobox);
}


Add CheckBox Column to DataGridView

private void btAddCb_Click(object sender, EventArgs e)
{
DataGridViewCheckBoxColumn checkbox = new DataGridViewCheckBoxColumn();
checkbox.HeaderText = "Tick";
checkbox.Name = "checkbox";
dataGridView1.Columns.Add(checkbox);
dataGridView1.Rows[3].Cells[7].Value = true; // make a specific row checked
}


Add Image Column to DataGridView

private void btImg_Click(object sender, EventArgs e)
{
DataGridViewImageColumn imagecontrol = new DataGridViewImageColumn();
imagecontrol.ImageLayout = DataGridViewImageCellLayout.Stretch;
Image image = Image.FromFile(@"C:UsersshabeerDownloadsMail-icon.png"); //image path
imagecontrol.Image = image;
dataGridView1.Columns.Add(imagecontrol);
imagecontrol.HeaderText = "Image";
imagecontrol.Name = "imagecontrol";
}


Add Link Column to DataGridView

private void btLink_Click(object sender, EventArgs e)
{
DataGridViewLinkColumn link = new DataGridViewLinkColumn();
link.HeaderText = "Visit";
link.Name = "Http://techcybo.com";
link.Text = "Http://techcybo.com";
dataGridView1.Columns.Add(link);
link.UseColumnTextForLinkValue = true;
}

Download Full Project 

LEAVE A REPLY

Please enter your comment!
Please enter your name here