그리드 데이터 바인딩

사용자 삽입 이미지



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 WinformDataBinding
{
    public partial class Form1 : Form
    {
        // DataTable
        private DataTable dt;


        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            CreateTabe();
            insertRowAdd();
        }

        // DataTable 생성
        private void CreateTabe()
        {
            dt = new DataTable("Members");

            DataColumn column = new DataColumn("ID", Type.GetType("System.String"));
            column.Caption = "ID";
            column.ColumnName = "ID";
            column.Unique = true;
            column.MaxLength = 20;
            dt.Columns.Add(column);

            column = new DataColumn("Name", Type.GetType("System.String"));
            column.Caption = "Name";
            column.ColumnName = "Name";
            column.MaxLength = 20;
            dt.Columns.Add(column);
        }


        // Data Binding
        private void BindData()
        {
            // Table 연결

            // db 연결시에는 테이블에 담아서 그리드의 데이터소스에 연결만 시켜주면 됩니다.
            dataGridView1.DataSource = dt;
        }


        // Insert
        private void insertRowAdd()
        {

            DataRow row = dt.NewRow();
            row["ID"] = "tiger";
            row["Name"] = "맹수";

            dt.Rows.Add(row);

            row = dt.NewRow();
            row["ID"] = "dog";
            row["Name"] = "미친개";

            dt.Rows.Add(row);

            row = dt.NewRow();
            row["ID"] = "cat";
            row["Name"] = "고양이";

            dt.Rows.Add(row);

            row = dt.NewRow();
            row["ID"] = "mouse";
            row["Name"] = "생쥐";

            dt.Rows.Add(row);

            BindData();
        }

     
    }
}

WinformDataBinding.zip