我创建了一个类型化的数据源,并且几乎每个字段都有null的默认值。 我不允许更改源表themeslves。
我通过将数据集表拖到表单上来创建数据网格。 如果用户尝试插入新行并保留没有值的字段,则使用数据源表不接受的null。
因此,我想通读数据集表列并将DefaultValue设置为0表示数字字段,将空白设置为字符串字段。
我差点使用下面的代码,但它只设置了第一列。
Private Sub Form1_Load(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the 'DataSet1.MyTable' table.
'You can move, or remove it, as needed.
Me.MyTableTableAdapter.Fill(Me.DataSet1.MyTable)
For Each DataColumn In DataSet1.MyTable.Columns
If DataColumn.DataType = Data.DbType.Decimal Then
DataSet1.MyTable.Columns.Item(DataColumn).DefaultValue = 0
Else
DataSet1.MyTable.Columns.Item(DataColumn).DefaultValue = " "
End If
Next
End Sub