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

DataGridのヘッダ列幅指定について

環境/言語:[vb.net 2003, WinXP or Win2k]
分類:[.NET]

お世話になります。

VB.NETでDataGridを使用していますが、
列幅の指定がうまくいきません。

下記のように記述してみたのですが、
列幅だけでなく読み取り専用属性もまったく効かず。

ためしにDataGridBoolColumnなども使用してみたのですが、
どうやら根本的に私が間違っているようで、
うまくいっておりません。

これだけで1日使ってしまっている状況です。
申し訳ないのですが、どなたかお力を貸していただけるようお願いします。


/*** ソース ***/
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim dt As DataTable = Nothing
Dim dr As DataRow = Nothing
Dim ii As Long

Dim ts As DataGridTableStyle
Dim cs As DataGridTextBoxColumn

dt = New DataTable("datatable1")

dt.Columns.Add("aaa")
dt.Columns.Add("bbb")

For ii = 0 To 99 Step 1

dr = dt.NewRow

dr.Item("aaa") = "aaa" & (ii + 1).ToString()
dr.Item("bbb") = "bbb" & (ii + 1).ToString()

dt.Rows.Add(dr)

Next ii

Me.DataGrid1.DataSource = dt

Me.DataGrid1.TableStyles.Clear()

ts = New DataGridTableStyle
ts.MappingName = "tablestyle1"

For ii = 0 To dt.Columns.Count - 1 Step 1

cs = New DataGridTextBoxColumn

cs.MappingName = "column" & ii.ToString()
cs.HeaderText = "column" & ii.ToString()
cs.ReadOnly = True
cs.NullText = String.Empty

Select Case ii

Case 0
cs.Width = 30

Case 1
cs.Width = 400

Case Else

End Select

ts.GridColumnStyles.Add(cs)

Next

DataGrid1.TableStyles.Add(ts)

End Sub
> VB.NETでDataGridを使用していますが、
> 列幅の指定がうまくいきません。

MappingNameを確かめてみてください。かなり違っているようですが。
そういうことだったんですか。
MappingNameは一意になれば何でもいいと勘違いしていました。
情けなさ過ぎる質問でした。
しょうもない質問でしたがありがとうございました。
おかげさまで解決しました。
解決済み!

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