DataGridViewのコンボボックスに色を設定する方法
DataGridViewを扱うとき、コンボボックスを使いたいことがしばしばある。
このとき、ただ色設定をしても、コンボボックスセルはデフォルト色になってしまう。
var comboBoxColumn = new DataGridViewComboBoxColumn();
comboBoxColumn.DefaultCellStyle.ForeColor = Color.Green;
例えば上記のように設定したとすると、
コンボボックスのリストの中は設定した通りのForeColorになっているが
選択を確定するとDefault色になってしまう。
FlatStyleをFlatに設定
これを、設定した色で表示させたい場合は、FlatStyleをFlatにすればよい。
column.FlatStyle = FlatStyle.Flat;
こうすることで、コンボボックスの見た目も変わり、色設定が可能になる。
現在はForeColorのみ設定しているが、BackColorやSelectionForeColorなどの設定も可能。
FlatStyleをPopupに設定
ちなみに、FlatStyle.Popupでも色設定が可能。Flatと違う点は、セル選択時に立体的に見えるような視覚効果があるということ。
コメント