Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
datatable是空的vb.net_Vb.net_Datagridview_Dataset - Fatal编程技术网

datatable是空的vb.net

datatable是空的vb.net,vb.net,datagridview,dataset,Vb.net,Datagridview,Dataset,我不熟悉.net语言。但我尝试将datagridview行复制到datatable。当我在datatable上使用Watch时,它有值,但当我尝试监视dataset时,datatable为空。这是我的密码: Dim dt As New DataTable("repTable") For Each col As DataGridViewColumn In dgrMatchesExacutives.Columns dt.Columns.Add(col.HeaderText)

我不熟悉.net语言。但我尝试将datagridview行复制到datatable。当我在datatable上使用Watch时,它有值,但当我尝试监视dataset时,datatable为空。这是我的密码:

Dim dt As New DataTable("repTable")

    For Each col As DataGridViewColumn In dgrMatchesExacutives.Columns
        dt.Columns.Add(col.HeaderText)
    Next

    For Each row As DataGridViewRow In dgrMatchesExacutives.Rows
        Dim dRow As DataRow = dt.NewRow()
        For Each cell As DataGridViewCell In row.Cells
            dRow(cell.ColumnIndex) = cell.Value
        Next
        dt.Rows.Add(dRow)
    Next

    If ds.Tables.Contains("repTable") Then
        ds.Tables.Remove("repTable")
    End If

    ds.Tables.Add("repTable")

DataSet的Tables属性是DataTableCollection,您可以使用向该集合添加项,但如果调用接收字符串的重载,则会创建一个新的datatable(当然为空)。使用与现有数据表相同的名称调用创建的数据表与数据集无关

如果您已经手动创建了一个数据表,并且自己准备了一个模式和记录,那么您需要使用

 ds.Tables.Add(dt)