VB.NET逐行(一行一行)向DataGridView数据控件中添加数据

时间:2022-09-21 19:19:57

在网络上很有看到逐行(一行一行)向DataGridView数据控件中添加数据,在这里我写了一个范例,可供大家参考!希望对有用到的同志有用。。。。

 

Dim AddDataSet As New DataSet() '实例化一个 DataSet数据集

        Dim AddRow As DataRow   '实例化一个DataRow数据行

        Dim RowValues(7) As Object  '定义一维数组

 

        AddDataSet.Tables.Add("batchs")  '向数据集中添加一个batchs表,表的名字是:batchs

 

'声明表头及该列的数据类型

        AddDataSet.Tables("batchs").Columns.Add("胶号", Type.GetType("System.String"))

        AddDataSet.Tables("batchs").Columns.Add("批号", Type.GetType("System.String"))

        AddDataSet.Tables("batchs").Columns.Add("手数", Type.GetType("System.Int32"))

        AddDataSet.Tables("batchs").Columns.Add("CT异常", Type.GetType("System.String"))

        AddDataSet.Tables("batchs").Columns.Add("耗能异常", Type.GetType("System.String"))

        AddDataSet.Tables("batchs").Columns.Add("温度异常", Type.GetType("System.String"))

        AddDataSet.Tables("batchs").Columns.Add("功率异常", Type.GetType("System.String"))

        AddDataSet.Tables("batchs").Columns.Add("异常时间", Type.GetType("System.DateTime"))

 

        For Each myRow As DataRow In Adodc1.Rows   '在循环中,你可向表添加你想要的数据

            RowValues(0) = Vstr(myRow.Item("批号"), "")

            RowValues(1) = Vstr(myRow.Item("胶号"), "")

            RowValues(2) = IIf(IsDBNull(myRow.Item("手数")), 0, myRow.Item("手数"))

            RowValues(3) = IIf(VState(myRow.Item("State"), 1), "异常", "")

            RowValues(4) = IIf(VState(myRow.Item("State"), 2), "异常", "")

            RowValues(5) = IIf(VState(myRow.Item("State"), 3), "异常", "")

            RowValues(6) = IIf(VState(myRow.Item("State"), 4), "异常", "")

            RowValues(7) = DateTime.FromOADate(myRow.Item("开始时间"))

 

            AddRow = AddDataSet.Tables("batchs").NewRow

            AddRow.ItemArray = RowValues

            AddDataSet.Tables("batchs").Rows.Add(AddRow)

        Next

 

        DataGrid1.DataSource = AddDataSet.Tables("batchs")

 

以上红色的表示,你可以根据你前面在声明表头的数据类型向相应的一维数组添加数据,这是我测试成功的。如果有更好的方法,请告诉我。。。