- [C#] Hướng dẫn giải nén file *.rar với tiến trình progress bar winform
- [C#] Chia sẻ source code make Crazy Error Message Effect Bomb Windows
- [C#] Lập trình ứng dụng theo mô hình MVP Model-View-Presenter Pattern Winform
- [C#] Giới thiệu và những thứ hay ho từ thư viện System.Reactive của Microsoft
- [C#] Hướng dẫn tạo ứng dụng Chat với GPT sử dụng Open AI API
- [DEVEXPRESS] Tạo month picker trên DateEdit Winform C#
- [DATABASE] Cách sử dụng và lưu ý khi sử dụng khóa ngoại (Foreign Key) trong Sqlserver
- [C#] Garbage Collector (GC) là gì? Cách giải phóng bộ nhớ trên ứng dụng Winform khi các đối tượng không còn sử dụng
- [C#] Cách tính độ tương phản màu sắc Contrast Color mà con người có thể nhìn thấy được
- [C#] Hướng dẫn mã hóa mật khẩu tài khoản ứng dụng đúng chuẩn Men
- [C#] Sử dụng Open AI Chat GPT viết ứng dụng Count down timer có hiệu ứng trên winform
- [DATABASE] Chia sẻ dữ liệu Pantone Color sql và json api
- [SQLSERVER] Tạo mã sản phẩm tự động như: SP0001, SP0002, SP0003... sử dụng Trigger
- [C#] Hướng dẫn kiểm tra phiên bản NET Framework cài đặt ở máy tính
- [C#] Hướng dẫn đọc file excel đơn giản sử dụng thư viện Epplus
- [C#] ConcurrentBag là gì và cách sử dụng nó trong lập trình bất đồng bộ
- [C#] AutoResetEvent là gì và cách sử dụng
- [DEVEXPRESS] Chia sẻ source code cách tạo biểu đồ sơ đồ tổ chức công ty Org Chart trên Winform C#
- [C#] Hướng dẫn tạo Auto Number trên Datagridview winform
- [DATABASE] Hướng dẫn tạo Procedure String Split in Mysql
[C#] Hướng dẫn tạo checkbox Datagridview và truyền dữ liệu giữa hai Gridview
Xin chào các bạn, hôm nay mình sẽ viết bài hướng dẫn các bạn cách thêm ô checkbox vào DataGridview C#, và truyền dữ liệu giữa hai DataGridview.
[C#] Tutorial Add Checkbox to DataGridview
Trong thiết kế ứng dụng, nhiều lúc các bạn muốn chọn sản phẩm vào giỏ hàng, các bạn có thể thực hiện theo cách mình bên dưới để chọn list hàng một cách dễ dàng.
Dưới đây là demo mình viết bằng C#:
Source code C#:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace TransferData2Gridview
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
DataGridViewTextBoxColumn dgvcId = new DataGridViewTextBoxColumn();
dgvcId.HeaderText = "Id";
DataGridViewTextBoxColumn dgvcFn = new DataGridViewTextBoxColumn();
dgvcFn.HeaderText = "First Name";
DataGridViewTextBoxColumn dgvcLn = new DataGridViewTextBoxColumn();
dgvcLn.HeaderText = "Last Name";
DataGridViewCheckBoxColumn dgvcCheckBox = new DataGridViewCheckBoxColumn();
dgvcCheckBox.HeaderText = "Select";
dataGridView1.Columns.Add(dgvcId);
dataGridView1.Columns.Add(dgvcFn);
dataGridView1.Columns.Add(dgvcLn);
dataGridView1.Columns.Add(dgvcCheckBox);
dataGridView1.Rows.Add("1", "Nguyễn", "Thảo", false);
dataGridView1.Rows.Add("2", "Cái Trí", "Minh", false);
dataGridView1.Rows.Add("3", "Võ Sơn", "Băng", false);
dataGridView1.Rows.Add("4", "Nguyễn Đình", "Tuyên", false);
dataGridView1.Rows.Add("5", "Fernaldo", "Torres", false);
dataGridView1.Rows.Add("6", "Dương", "Quá", false);
dataGridView1.Rows.Add("7", "Tiểu Long", "Nữ", false);
dataGridView1.Rows.Add("8", "Trương Vô", "Kỵ", false);
dataGridView1.Rows.Add("9", "Hoàng Dược", "Sư", false);
dataGridView1.Rows.Add("10", "Quách", "Tĩnh", false);
dataGridView1.Rows.Add("11", "Hoàng", "Dung", false);
dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
dataGridView1.AllowUserToAddRows = false;
DataGridViewTextBoxColumn dgvcId2 = new DataGridViewTextBoxColumn();
dgvcId2.HeaderText = "Id";
DataGridViewTextBoxColumn dgvcFn2 = new DataGridViewTextBoxColumn();
dgvcFn2.HeaderText = "First Name";
DataGridViewTextBoxColumn dgvcLn2 = new DataGridViewTextBoxColumn();
dgvcLn2.HeaderText = "Last Name";
dataGridView2.Columns.Add(dgvcId2);
dataGridView2.Columns.Add(dgvcFn2);
dataGridView2.Columns.Add(dgvcLn2);
dataGridView2.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
dataGridView2.AllowUserToAddRows = false;
}
private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i <= dataGridView1.Rows.Count - 1; i++)
{
bool rowAlreadyExist = false;
bool checkedCell = (bool)dataGridView1.Rows[i].Cells[3].Value;
if (checkedCell == true)
{
DataGridViewRow row = dataGridView1.Rows[i];
if (dataGridView2.Rows.Count != 0)
{
for (int j = 0; j <= dataGridView2.Rows.Count - 1; j++)
{
if (row.Cells[0].Value.ToString() == dataGridView2.Rows[j].Cells[0].Value.ToString())
{
rowAlreadyExist = true;
break;
}
}
if (rowAlreadyExist == false)
{
dataGridView2.Rows.Add(row.Cells[0].Value.ToString(),
row.Cells[1].Value.ToString(),
row.Cells[2].Value.ToString()
);
}
}
else
{
dataGridView2.Rows.Add(row.Cells[0].Value.ToString(),
row.Cells[1].Value.ToString(),
row.Cells[2].Value.ToString()
);
}
}
}
}
}
}
HAVE FUN :)