출처 : 본인
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;