DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DataGridView上のCheckBoxのFlatStyleについて

環境/言語:[VisualBasic2005]
分類:[.NET]

お世話になります。
最近VBをはじめまして、DataGridViewを使ったソフトに挑戦しております。
DataGridViewにDataTableをバインドして表示しているのですが、
Bool型のデータが表示されているCheckBoxColumnの
チェックボックスのFlatStyleを指定するにはどうしたらいいでしょうか?


非バインドで自分でColumnを追加すると

Dim clmCheck As New DataGridViewCheckBoxColumn
clm.FlatStyle = FlatStyle.Flat
DataGridView1.Columns.Add(clmCheck)

こんな感じでスタイルを変更できるのですが、
データをバインドして自動で追加されたカラムのスタイルを
あとから変更することはできないのでしょうか?

Columns("name").Width = 30
こんな感じで幅ぐらいは変えられるので、FlatStyleも変えられるのではないかと思うのですが・・・。何卒、方法をご教授ください。
> Columns("name").Width = 30
> こんな感じで幅ぐらいは変えられるので、FlatStyleも変えられるのではないかと思うのですが・・・。

Columns("name")で取得できるオブジェクトをDataGridViewCheckBoxColumn型にキャストしてはいかがでしょうか。

DataGridViewの列にチェックボックスを表示する
http://dobon.net/vb/dotnet/datagridview/datagridviewcheckboxcolumn.html
> Columns("name")で取得できるオブジェクトをDataGridViewCheckBoxColumn型にキャストしてはいかがでしょうか。
>
> DataGridViewの列にチェックボックスを表示する
> http://dobon.net/vb/dotnet/datagridview/datagridviewcheckboxcolumn.html

管理人さま
ありがとうございます。
型にキャストするというのが良くわからず、
こういうことだろうかとやってみたらできました!

その1
Dim col As DataGridViewCheckBoxColumn = DataGridView1.Columns("name")
col.FlatStyle = FlatStyle.Flat

その2
CType(DataGridView1.Columns("name"), DataGridViewCheckBoxColumn).FlatStyle = FlatStyle.Flat

どうもありがとうございました!
解決済み!
> その1
> Dim col As DataGridViewCheckBoxColumn = DataGridView1.Columns("name")
> col.FlatStyle = FlatStyle.Flat

これは、暗黙の型変換を行っているため、Option StrictがOnの時はエラーになります。その2のように明示的にキャストした方がよいでしょう。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板