DataGridView (winforms)에서 "선택 스타일"을 어떻게 변경합니까?DataGridView 선택한 셀 스타일
답변
쉽게 그리드의 DefaultCellStyle의 SelectedBackColor 및 SelectedForeColor에 값을 할당하여 데 ForeColor 및 selcted 세포의 배경색을 변경할 수 있습니다 . 당신이 작업을 수행해야하는 경우
더 당신은 당신에게 인 selectionchanged 이벤트를 처리 할 필요가 스타일링
편집 :
using System.Drawing.Font;
private void dataGridView_SelectionChanged(object sender, EventArgs e)
{
foreach(DataGridViewCell cell in ((DataGridView)sender).SelectedCells)
{
cell.Style = new DataGridViewCellStyle()
{
BackColor = Color.White,
Font = new Font("Tahoma", 8F),
ForeColor = SystemColors.WindowText,
SelectionBackColor = Color.Red,
SelectionForeColor = SystemColors.HighlightText
};
}
}
SelectedBackColor, SelectedForeColor 확인을 누릅니다. differents 셀에 다른 색상을 설정할 수있는 방법이없는 것 같습니다. :-( –
SelectedBackColor 및 SelectedForeColor를 DefaultCellStyle 속성에 사용하면 선택된 셀에 동일한 색상이 적용됩니다. 스타일을 다른 셀로 설정하려면 다시 한번 SelectionChanged 이벤트를 처리하고 일부 조건부 할당 선택한 셀의 행 또는 열을 기반으로합니다. – Luis
고마워요 !!!! 정확히 내가 무엇을 찾고 있었는지 ... 아직 투표 할 수없는 것은 수치스러운 일입니다! –
GridView의 SelectedCells property과 DataGridViewCell의 Style property을 사용하십시오.
좋지 않아. 이 코드를 사용하여 빈 폼 DataGridView를 테스트 (첫 번째 선택된 셀 변경) 개인 무효 dataGridView1_SelectionChanged (객체 송신자있는 EventArgs E) { dataGridView1.SelectedCells [0] = .Style.BackColor Color.Beige; } 스타일을 선택하면 다른 셀로 변경된 후에 만 표시됩니다. –
은 DataGridView에에 인 selectionchanged 이벤트를 처리하고이 같은 보이는 코드를 추가
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in this.dataGridView1.Rows)
{
foreach (DataGridViewCell c in row.Cells)
{
c.Style = this.dataGridView1.DefaultCellStyle;
}
}
DataGridViewCellStyle style = new DataGridViewCellStyle();
style.BackColor = Color.Red;
style.Font = new Font("Courier New", 14.4f, FontStyle.Bold);
foreach (DataGridViewCell cell in this.dataGridView1.SelectedCells)
{
cell.Style = style;
}
}
테스트 됨. 불완전한. 배경은 적용되지 않지만 글꼴은 적용됩니다. 이상한 –
배경 IS가 적용되지만 '선택'의 색상이 우선 적용됩니다. 편집 할 셀을 두 번 클릭하면 배경색이 표시됩니다. – BFree
topic에 제공된 솔루션을 사용해 볼 수 있습니다. 나는 그것을 테스트하고 승인했다.
희망을 얻었습니다.
이렇게하면 선택한 셀에 컬러 테두리를 그릴 수 있습니다.
private void dataGridView_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
{
if (e.RowIndex >= 0 && e.ColumnIndex >= 0)
{
if (dataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Selected == true)
{
e.Paint(e.CellBounds, DataGridViewPaintParts.All & ~DataGridViewPaintParts.Border);
using (Pen p = new Pen(Color.Red, 1))
{
Rectangle rect = e.CellBounds;
rect.Width -= 2;
rect.Height -= 2;
e.Graphics.DrawRectangle(p, rect);
}
e.Handled = true;
}
}
}
- 1. DataGridView 읽기 전용 셀
- 2. datagridview 셀 편집 오류
- 3. DataGridView 셀 편집
- 4. DataGridView 셀 사용자 지정
- 5. DataGridView 셀 인덱스 문제
- 6. DataGridView 복사 붙여 넣기 (스타일, 배경색, ...)
- 7. TableCellRenderer 선택한 셀 문제
- 8. DataGrid에서 선택한 열/셀
- 9. 선택한 행의 셀 편집
- 10. DataGridView 셀 배경색이 설정되지 않았습니다.
- 11. DataGridView 셀 값 변경되지 않음
- 12. 셀 스타일 분리 - 가능성
- 13. DataGridView 셀 'Enter'를 누른 경우에만 유효성 검사
- 14. DatagridView 업데이트 행 데이터를 기반으로하는 셀 배경색
- 15. 백분율을 입력하기위한 DataGridView 셀 서식 지정?
- 16. VS 2010의 DataGridView 셀 클릭 이벤트
- 17. TreeView 노드를 DataGridView 셀 문제로 드래그
- 18. DataGridView 유효성 검사 및 셀 값 변경
- 19. return VB 웹에서 datagridview 셀 값을 얻습니다.
- 20. 복사하여 DataGridView 셀 (C#)에 붙여 넣기
- 21. DataGridView의 특정 셀 스타일 변경
- 22. WPF 동적으로 셀 스타일 지정
- 23. UITableView 그룹 스타일 셀 배경
- 24. jQuery를 사용하여 스타일 테이블 셀
- 25. CSS/javascript 선택한 링크 스타일
- 26. DataGridView 및 SelectedCells - 선택한 셀의 행 인덱스 찾기
- 27. DataGridview 행에서 개별 셀의 스타일 변경
- 28. iPhone 테이블보기 셀 데이터를 기반으로 한 셀 스타일
- 29. 셀 스타일의 WPF DataGrid - 같은 열의 다른 셀 스타일
- 30. 플렉스 데이터 그리드의 선택한 셀 강조 표시
내 질문을 명확히했습니다. 나는 의미 : 셀 _whole_ 보이는 (스타일, 배경 포함) 변경 _is_ 선택한 _when_ 선택됩니다. 시각적 인 변화를 보지 못한다면 스타일을 변경할 필요가 없습니다. 오해에 깊은 죄송합니다 :-(. 나의 가난한 영어 파업 다시. 미안) - : –