如何添加新的 datagridview 行并自定义字体颜色和字体大小?
我有一个包含 5 个 culomns 的 datagridview,我使用此代码但返回错误“索引超出范围”
Dim NewR 作为 DataGridViewRow = 新 DataGridViewRow
NewR.Cells(0).Value = ""
NewR.Cells(1).Style.ForeColor = Color.BlueViolet
NewR.Cells(1).Style.Font = New Font("tahoma", 14)
NewR.Cells(1).Value = "row Materials Costumers"
NewR.Cells(2).Value = ""
NewR.Cells(3).Value = ""
NewR.Cells(4).Value = ""
DGVMezan.Rows.Add(NewR)
我需要添加自定义的新行。
在这里,您正在创建一个不带模板的新 DataGridViewRow:
Dim NewR As DataGridViewRow = New DataGridViewRow()
行是空白的,没有列的概念,所以它没有单元格。
如果您尝试在任何索引处访问空的
Cells
集合,您会得到一个 IndexOutOfRangeException
您可以使用 DataGridView 的 Rows
集合的
Add()方法生成一个新 Row,然后使用已定义的模板创建该新 Row,以便您可以访问其
Cells
集合。
例如:
Dim rowIndex = DGVMezan.Rows.Add()
With DGVMezan.Rows(rowIndex).Cells(1)
.Style.ForeColor = Color.BlueViolet
.Style.Font = New Font("tahoma", 14)
End With
DGVMezan.Rows(rowIndex).
SetValues({"Value1", "row Materials Costumers", "Value3", "Value4", "Value5"})
请注意,最好创建类对象的集合(或 DataTable),然后使用该集合作为 DataGridView 的数据源。
添加到对象集合或从对象集合中删除的任何数据都会立即反映在 DataGridView 中,并且 UI 也会更新。
如果您尝试使用 DataGridView 作为电子表格,您将会失望