2010-08-20 2 views
2

내 프로젝트에 DevExpress XtraGrid을 사용하고 있습니다. 특정 셀 (특히 배경색)의 모양을 설정해야합니다. 그리드에서 속성 또는 메서드를 찾을 수 없습니다! 이 방법을 볼 수있는 유일한 방법은 GridView이라는 RowCellStyle 이벤트를 잡아 주어진 셀의 모양이 변경되어야하는지 여부를 결정하는 것입니다. 총칭은 비효율적입니다. 100 개의 셀 중에서 1 개가 모양을 필요로 할 것이기 때문입니다. 변경되었지만 나머지 99 명은 여전히 ​​코드를 실행하여 모양을 변경해야하는지 여부를 결정합니다.DevExpress 그리드에서 셀 모양을 설정하는 방법은 무엇입니까?

다른 방법이 있어야합니다. 그러나 무엇?

+0

나는 정확히 같은 질문을했습니다. 이것은 완벽하게 작동했습니다. 나는 이것도 유용하다고 생각했다 : http://www.depopo.net/2011/04/devexpress-coloring-individual-cells-orrows-in-a-gridcontrol-based-on-a-cell-value/ – Alex

답변

3

이 작업을 구현하는 올바른 방법을 찾았습니다. RowCellStyle 이벤트를 처리하고 e.Appearance 속성을 변경하십시오. 나는 또한이 사건이 아주 자주 제기되지 않고 화면 상에 현재 보이는 세포에 대해서만 일어난다 고 말할 수있다. 따라서이 이벤트 처리기의 코드로 인한 속도 저하를 알 수는 없습니다. 이를 확인하면 성능 문제가있는 샘플 프로젝트를 지원 센터 (http://devexpress.com/Support/Center/)에 게시하면 개선 할 수있는 방법이 있습니다.

+0

OK , 귀하의 제품에 대한 질문을 SO가 모니터링하고 있습니다. 필자는 이전 프로그래머가 의도 한 목적이 아닌 그리드를 사용하고 있다는 사실, 즉 5x5 픽셀의 셀 크기를 갖는 이미지 상단의 그래픽 오버레이 행렬에 의해 문제가 발생했다고 생각합니다. 기본적으로 정상 격자보다 2 배 더 많은 셀을 표시하므로 성능 문제는 해결하지 않겠습니다. 더 적절한 도구를 사용하여 전체 디자인을 다시 작성했습니다 ...;) –

1

그것이 내가해야만하는 방법입니다. 최신 버전의 XtraGrid 컨트롤이 더 나은 방법으로이 작업을 수행하는지 여부 만 확인하려는 경우 DevExpress Forums을 확인해야 할 수 있습니다.

관련 문제