2016-09-02 3 views
1

하나를 클릭하면 모든 셀의 배경색을 설정하고 싶습니다. 죄송 행 6 그림Datagridview 모든 셀의 배경색

enter image description here

처럼에 윈폼

처럼 새로운 생각! 클릭시 모든 셀의 붉은 색이 나타납니다.

나는 또한 DefaultCellStyleDefaultRowStyle으로 시도하지만 이는 다시 한 셀에만 적용됩니다.

셀 사이를 반복하고 선택시 각 bg 색상을 넣어야 할 필요가 있을까요?

택시 누군가 대답을 줍니까?

+1

무엇이'DataGridView.SelectionMode' 값입니까? 목적을 달성하기 위해'FullRowSelect'로 설정할 수 있습니까? – ASh

+0

@ASh는 내 초보자 문제를 slove 고맙다. – Ivan

답변

1

시도해 보셨습니까?

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
    { 
     DataGridViewCellStyle CellStyle = new DataGridViewCellStyle(); 
     CellStyle.BackColor = Color.Red; 
     dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Style = CellStyle; 
    } 

또는 전체 행의 배경색을 변경하려면 다음이

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
    { 
     dataGridView1.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.Red; 
    } 
+0

감사합니다.이 또한 도움이되었습니다. – Ivan

+0

이러한 코드를 사용하면 정렬, 앞쪽 색상 등과 같이 셀에있는 다른 스타일이 느슨해집니다. 또한 원래 값으로 다른 행을 다시 설정해야합니다. –

0
  1. 는 CurrentRow와 클릭을 수신하도록 DataGridView에 클릭 이벤트를 사용하려고합니다.
  2. 색을 설정하는 속성은 DefaultCellStyle입니다.

    private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
    { 
        dataGridView1.CurrentRow.DefaultCellStyle.BackColor = Color.Red; 
    } 
    
2

이 기능에 대한 이벤트를 처리 할 필요가 없습니다. SelectionBackColor 속성이 DataGridViewCellStyle 인 경우 해당 용도로 사용되며 셀을 선택한 경우 DataGridView 셀에서 사용하는 배경색을 설정합니다. 디자이너 또는 코드를 사용하여 구성하는 것으로 충분합니다. DataGridView의 속성을 사용하여 모든 셀에 대한

다시 설정 원하는 선택 색상 :

RowsDefaultCellStyle → SelectionBackColor 

은 또한 당신이 사용할 수는 :

RowTemplate → DefaultCellStyle → SelectionBackColor 

그런 다음 FullRowSelectSelectionMode을 설정하기에 충분합니다.

0

나는 파티에 늦었다 고 알고있다. . .

DataGridView에는 DefaultCellStyle이 있으며이 안에 SelectionBackColorSelectionForeColor 속성이 있습니다.

DataGridView는 선택한 스타일이 적용되지 않는 경우 스타일 상속 아이디어를 사용합니다.

관련 문제