2017-06-24 17 views
-2

テキストボックスを使用してプリセットできる列数を持つdatagridviewがあります。最初の4列は、決められた幅を持ちます。残りのすべての列の幅を設定しようとしています。このコードは、vbネット内の特定の数のdatagridview列の幅をプログラムで設定します。

dgv1.ColumnCount = CInt(Val(Form32.tbNbBox.Text) + 4) 
    dgv1.Columns(0).Width = 100 
    dgv1.Columns(1).Width = 70 
    dgv1.Columns(2).Width = 70 
    dgv1.Columns(3).Width = 50 
    For i As Integer = 4 To CInt(Val(Form32.tbNbBox.Text)) 
    Dim c(i) As DataGridViewColumn 
    For Each c(i) In dgv1.Columns 
     c(i).Width = 40 
    Next 

です。その結果、すべての列の幅は同じです(40)。助けを前にありがとう。

+0

私はあなたの '無意味な'を理解していません。私のtbNbBox = 32と仮定すると、For Eachループを削除した場合、正しい幅(100,70,70,50)の最初の4つの列と、プロパティの標準幅100の32の列が見つかる(40)、dgv1.Columns(5).Width = 40など、列(35)まで、私は新しい幅を取得しますが、列の数に選択された制限を得ることができず、予め選択された数の列をプログラム的に追加する方法を知らない。 – Dom

答えて

0

私はあなたがそれよりも複雑になっていると思います。

For i As Integer = 4 To CInt(Val(Form32.tbNbBox.Text)) -1 
    dgv1.Columns(i).Width = 40 
    Next 
+0

あなたは大丈夫です、私は馬鹿でした。ここで私たちは言葉を持っています。どうもありがとうございます。 – Dom

関連する問題