我有一个DataGridView,其中有一个ComboBox列。问题是,在默认情况下,组合框中总是选择一个空值,但我希望确保默认值始终是某个值,即成员或组合框。
If DataGridView1.Rows.Count > 0 Then
For Each row As DataGridViewRow In DataGridView1.Rows
'row.Cells("ColDrCr").Value = "Debit"
If row.Cells("ColDrCr").Value.ToString().Trim = "Credit" Then
result += Convert.ToDouble(row.Cells("ColAmount").Value)
End If
If row.Cells("ColDrCr").Value.ToString().Trim = "Debit" Then
result1 += Convert.ToDouble(row.Cells("ColAmount").Value)
End If
Next
txtTotal.Text = result1 - result
End If
正如您所看到的,我正在检查所选的组合框的值是Debit还是Credit。但是当一个新的行被添加到DataGridView中时,它总是为空的,这是我想要防止的。我想将默认值设置为借方或贷方。我尝试过ColDrCr.DefaultCellStyle. = "Credit"
,但它不起作用,因为它只将文本显示为贷方,但是当您检查row.Cells("ColDrCr").Value.ToString().Trim = "Debit"
的值时,它返回null
我也会接受C#的答案,如果他们可以转换成vb使用在线工具。
发布于 2013-12-27 22:01:04
如果使用DataSet
或DataTable
作为DataGridView
的DataSource
,则可以设置列的默认值。
例如:
YourDataTable.Columns("ColDrCr").DefaultValue = "Debit"
发布于 2014-04-09 15:42:04
最简单的方法是在绑定到之前更新DataTable属性。但是,您可能无法将DataTable属性作为方法调用,因为这可能会抛出错误。解决方案是将它们视为数组。
而不是这个
dataTable.Columns("ColDrCr").DefaultValue = "Credit"
使用这个
dataTable.Columns["ColDrCr"].DefaultValue = "Credit"
https://stackoverflow.com/questions/20796611
复制相似问题