C#(VB.NET)でのお話。
DataGridViewにチェックボックスを表示できなくてハマったので覚え書き。
まず、DataGridViewのDataSourceとして、dataSet1を用意し、その中(Tables→Columns)にDataType=System.Boolean(チェックボックスで利用したいのでbool型)のメンバを用意。
で、そのメンバをDataGridView1の列として追加する。
ColumnTypeは、DataGridViewCheckBoxColumnとして追加。
これで、指定したカラムにチェックボックスが表示されるようになる筈だが、何故か何も表示されない。
何が悪いのかさっぱり分からず、新規プロジェクトで同様の方法で試してみたが、その場合は、きちんと表示される。
全く原因が分からないんで、ダメモトで1つ1つプロパティの値を変更しながらチェックしてみた。
すると、FlatStyleの設定値次第で表示されることが分かった。
なぜか、FlatStyleがStandard(デフォルト値)、Systemの場合、何も表示されないが、Flat、Popupの場合、表示される。
FlatStyle=Flatの場合
FlatStyle=Popupの場合
Visual Studio 2008のバグなのか、イマイチ原因が分からないけど、とりあえずFlatStyleの値を変更し、問題を回避してみることにした。
私もはまりました。
参考にさせていただきました。
ありがとう!
同じくはまりましたが、
私の場合は列の高さを広げるとFlatStyleがStandardでも
表示されるようになりました。
なるほど、縦幅が狭いとチェックボックスが消えて見える
というオチなんですね。
縦幅を広げられるなら、この解決方法がベストですね。
原因がわからずほぼ一日ハマってました。
ほんと助かりました!
ありがとうございます。
私も、助かりました^^;
おかげさまで、定時で帰れそうです。
高さを低くしたかったのですが、
Flatstyleで解決できるとは。