1. 먼저, 콤보박스의 DrawMode속성을 OwnerDrawFixed로 바꿉니다.
2. 콤보박스의 comboBox3_DrawItem이벤트 핸들러를 등록합니다.
3. 그 이벤트에 아래와 같이 구현합니다.
if ( e.Index < 0) return; Brush brush = Brushes.Black; string str = comboBox3.Items[e.Index].ToString(); // 해당 데이터를 검사합니다. (검사하는 방식은 상황에 맞게 적절하게 조정하세요) if (str.IndexOf("토요일") != -1) { brush = Brushes.Blue; } else if (str.IndexOf("일요일") != -1) { brush = Brushes.Red; } if ( (e.State & DrawItemState.Selected) == DrawItemState.Selected ) brush = Brushes.White; // 선택되어있는 항목의 경우, 글자색을 하얀색으로 한다. // 배경색을 칠해준다. e.DrawBackground(); // Item의 글자를 그려준다. e.Graphics.DrawString(str, comboBox3.Font, brush, e.Bounds); // 포커스 사각형을 그려준다. e.DrawFocusRectangle();
'Development > C#' 카테고리의 다른 글
폼안의 모든 컨트롤 접근하기 (0) | 2010.07.21 |
---|---|
텍스트에 숫자만 입력 가능하게 (0) | 2010.07.21 |
정규표현식 (0) | 2010.07.21 |
세계기준시간(UTC) 편차 (0) | 2010.07.21 |
비주얼스타일과 텍스트 랜더링 설정 (0) | 2010.07.21 |