2014-05-09 2 views
0

DataGridView .. 첫 번째 열을 중점적으로 다룹니다. GRID LOAD에서 동일한 값을 가진 행을 강조 표시합니다.
빨간색으로 강조 표시된 행, 파란색으로 강조 표시되는 행, 파란색으로 강조 표시되는 행, 녹색으로 표시된 5 개의 행을 예로 들어 보겠습니다.
또는 1은 빨간색이고 3은 강조 표시가 없으며 빨간색으로 5가 다시 표시됩니다 (대체 색상과 유사).
C# DataGridView 하이라이트 행

아이디어는 시각적으로 동일한 값으로 행을 구분하는 것입니다.

아이디어가 있으십니까? 미리 감사드립니다.

Column1 | 
------ 
1 
1  
3 
3 
3  
5 
5 

는했지만, 시각 분리 알아낼 수 :이 CellFormatting 이벤트에 상관

int i, i_temp = 0; 
foreach (DataGridViewRow dr in dgv.Rows) 
     { 
      i = int.Parse(dr.Cells["Column1"].Value.ToString()); 
      if (i_temp == int.Parse(dr.Cells["Column1"].Value.ToString())) 
      { 
       dr.DefaultCellStyle.BackColor = Color.Red; 
       i_temp = i; 
      } 
     } 

답변

0

규정 방법.

private void MyGrid_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) 
{ 
    var dr = MyGrid.Rows[e.RowIndex]; 
    var intVal = int.Parse(dr.Cells["Column1"].Value.ToString()); 
    switch (intVal) 
    { 
     case 1: 
      e.CellStyle.BackColor = Color.Red; 
      break; 
     case 3: 
      e.CellStyle.BackColor = Color.Blue; 
      break; 
     case 5: 
      e.CellStyle.BackColor = Color.Green; 
      break; 
     default: 
      break; 
    } 
} 

이 열은 e.ColumnIndex 속성에서 조건부 서식을 지정해야 특정 열에 적용 할 수 있습니다.