출처 : 본인


2017/07/18 - [프로그램 자료/Visual C#] - 데이터그리드뷰(DataGridView) 데이터 바인딩




//데이터 그리드 뷰를 입맛에 맞게 바꾸는 작업

public static void DataGridViewDesignSet(DataGridView dgv)

{

    //init

    dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect; // row 로 선택하기

    dgv.ReadOnly = true;

    dgv.RowHeadersVisible = false; // 왼쪽 화살표 안보이게

    dgv.AllowUserToAddRows = false; //맨 아래 로그 가리기

    dgv.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.None; //row size 막기

    dgv.AllowUserToResizeRows = false; //row size 막기

    dgv.AllowUserToResizeColumns = false; //column size 막기

    dgv.MultiSelect = false;

    dgv.Columns.Cast<DataGridViewColumn>().ToList().ForEach(f =>

    {

        f.SortMode = DataGridViewColumnSortMode.NotSortable; // sort 막기

        f.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter; //헤더텍스트 센터 정렬

        f.HeaderCell.Style.Font = new Font("Arial", 12F, FontStyle.Bold, GraphicsUnit.Pixel); // 폰트 사이트 및 크기 조정

    });

    //even Row에 대하서 색상 칠하기

    dgv.Rows.Cast<DataGridViewRow>().Where((x, i) => i % 2 != 0).ToList().ForEach(r => r.DefaultCellStyle.BackColor = Color.AliceBlue);

}



//데이터그리드뷰에 새로운 데이터를 넣고 리프레쉬 하는 작업

private BindingSource _bsPreview = new BindingSource();

dgvPreView.DataSource = _bsPreview;

 

//dgvPreView.DataSource = typeof(DataTable);

//dgvPreView.DataSource = dt;

//dgvPreView.Refresh();

 

_bsPreview.DataSource = typeof(DataTable);

_bsPreview.DataSource = dt;

dgvPreView.Refresh();



// column 속성 추가

dgv.Columns[0].HeaderText = "번호";

dgv.Columns[0].Width = 55;

dgv.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

 

dgv.Columns[1].HeaderText = "분석대상";

dgv.Columns[1].Width = 80;

dgv.Columns[1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

 

dgv.Columns[2].HeaderText = "분석구역";

dgv.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;

dgv.Columns[2].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

 

dgv.Columns[3].HeaderText = "분석일";

dgv.Columns[3].Width = 140;

dgv.Columns[3].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;







Posted by motolies
,