반응형

DataGridView Cell 선택 해제

DataGridView를 생성하고 Row, Column을 초기화하여 만들어 놓으면 cell 이 선택되어 있다.

 

 

표를 보여줄 용도로만 쓸 것이기에 이 선택된 cell 을 없앨려고 한다.

 

아래의 코드를 써 주면 된다. 현재 선택셀을 null 로 지정.

dataGridViewResult.CurrentCell = null;  // No cell select
// Control name : dataGridViewResult

 

위 이미지와 같이 선택된 셀이 없이 DataGridView가 생성되었다.

 

 

 

 

 

 

 

728x90
반응형
반응형

DataGridView Row Header indicator remove & index 추가

 

행과 열의 header 크기를 같이 맞추려고 해도 Row indicator (화살표)가 있어서 

행 header의 크기를 항상 커진다. 

Row indicator가 필요없어 아래의 코드를 적용하여 제거하였다.

 

private void dataGridViewNormal_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e)
{
	e.PaintCells(e.ClipBounds, DataGridViewPaintParts.All);
	e.PaintHeader(DataGridViewPaintParts.Background | DataGridViewPaintParts.Border | DataGridViewPaintParts.Focus | DataGridViewPaintParts.SelectionBackground);
	e.Handled = true;

	using (SolidBrush b = new SolidBrush(dataGridViewNormal.RowHeadersDefaultCellStyle.ForeColor))
	{
		e.Graphics.DrawString((e.RowIndex + 1).ToString(), e.InheritedRowStyle.Font, b, e.RowBounds.Location.X + 10, e.RowBounds.Location.Y + 4);
	}
}
// dataGridViewNormal 이라 이름 지은 control 의 RowPrePaint 이벤트

 

using 내부는 열 header에 index를 추가하는 코드.

 

위 이미지와 같이 표시된다.

 

 

 

 

 

728x90
반응형
반응형

DataGridView column header color 변경. (열 헤더 색상 변경)

 

dataGridViewNormal.EnableHeadersVisualStyles = false;
dataGridViewNormal.ColumnHeadersDefaultCellStyle.BackColor = Color.LightGray;

// dataGridViewNormal은 control name

 

밝은 회색으로 변경하는 코드.

 

 

위 이미지와 같은 색상이 된다.

 

 

 

 

728x90
반응형
반응형

DataGridView 열 정렬 기능 해제

 

DataGridView의 header 열을 클릭하면 정렬이 되어 버린다. 이것을 해제하는 방법.

 

foreach (DataGridViewColumn column in dataGridViewNormal.Columns)
{
	column.SortMode = DataGridViewColumnSortMode.NotSortable;
}

// dataGridViewNormal은 control name

 

Form load event에 넣어 주었다.

 

 

위와 같이 column header가 클릭안 되게 된다.

 

 

 

 

 

 

728x90
반응형

+ Recent posts