C#/VB.NET DataGridView CheckBox Column 만들기

2019. 12. 25. 18:33C#

728x90
반응형

 

 

 

DataGridView에서 Column을 Checkbox Type으로 하고 싶을 때 여러가지 방법이 있습니다.

첫 번째 방법

DataGridViewCheckBoxColumn 을 만들어 DataGridView에 Column을 추가 합니다.

// C# 
var chkCol = new DataGridViewCheckBoxColumn
{
    Name = "chk",
    HeaderText = "근무"
};
DataGridView1.Columns.Add(chkCol);
'// VB.NET
Dim chkCol As New DataGridViewCheckBoxColumn With
    {
        .Name = "Chk", .HeaderText = "근무"
    }
_dgv.Columns.Add(chkCol)

 

 

두 번째 방법

단순히 Column의 Type을 Boolean형으로 해주게 되면 자동으로 Checkbox가 생성이 됩니다.

// C#
DataTable dttemp = new DataTable();
dttemp.Columns.Add("이름");
dttemp.Columns.Add("날짜");
dttemp.Columns.Add("근무", typeof(bool));
dttemp.Columns.Add("휴무", typeof(bool));
dttemp.Columns.Add("외출", typeof(bool));

dttemp.Rows.Add("홍길동", "2019-12-11", true, false, false);
dttemp.Rows.Add("홍길순", "2019-12-11", true, false, false);
dttemp.Rows.Add("김영수", "2019-12-11", false, false, true);

// Binding 
DataGridView1.DataSource = dttemp;

'// VB.NET
Dim dttemp As DataTable = New DataTable
With dttemp.Columns
    .Add("이름")
    .Add("날짜")
    .Add("근무", GetType(Boolean))
    .Add("휴무", GetType(Boolean))
    .Add("외출", GetType(Boolean))
End With

dttemp.Rows.Add("홍길동", "2019-12-11", True, False, False)
dttemp.Rows.Add("홍길순", "2019-12-11", True, False, False)
dttemp.Rows.Add("김영수", "2019-12-11", False, False, True)

'// Binding 
DataGridView1.DataSource = dttemp

 

728x90
반응형