2012-01-06 6 views
4

を追加すると、これは動作します:DataGridViewRowが手動で空のセルを引き起こし

DataGridView.Rows.Add("Bla Bla Bla", value1, value2) 

しかし、私がしなければ:

Dim newrow As New DataGridViewRow 
newrow.SetValues("Bla Bla Bla", value1, value2) 
If Not value1.Equals(value2) Then 
    newrow.DefaultCellStyle.ForeColor = Color.Red 
End If 
DataGridView.Rows.Add(newrow) 

行全体が空です。

なぜ空行がいっぱいですか?

答えて

4

newrow変数にはセルがありません。値を設定するセルがないため、SetValuesはあなたの情報を無視しています。

DataGridViewRow.SetValues Methodから:

初期化するためのセルがあるよりも、値のリストに複数の値がある場合、このメソッドは、余分な値を無視し、falseを返します。このメソッドは、指定された値のいずれかを設定できない場合もfalseを返します。

セルの数よりも少ない値がある場合、残りの一致しないセルは現在の値を保持します。

細胞を移入するCreateCellsメソッドを使用します。

newrow.CreateCells(DataGridView) 
'' or 
newrow.CreateCells(DataGridView, New Object() {"Bla Bla Bla", value1, value2}) 
+1

OK、私は答えを見つけて、私はrow.SetValues' '前に' 'row.CreateCells(DataGridViewの)を追加する必要があります感謝 – Baptiste

関連する問題