繁体   English   中英

如何以编程方式添加一行 datagridview

[英]how can i add a row datagridview programaticaly

使用这些代码后,我可以在datagridview中添加一行并写入数据吗?

我可以写 manuel 但我不能用按钮写

 .Rows(0).Cells(0).Value = CARKOD.Text
                .Rows(s).Cells(1).Value = UNVAN.Text
                .Rows(s).Cells(2).Value = ACIKLAMA

 
With MAHSUP
            Dim dt1 = New DataTable()
            myDA1 = New OleDbDataAdapter(cm1)
            Dim builder1 As OleDbCommandBuilder = New OleDbCommandBuilder(myDA1)
            myDataSet1 = New DataSet()
            myDA1.Fill(myDataSet1, "CARTH001")
            .DataSource = myDataSet1.Tables("CARTH001").DefaultView
        End With ```

数据绑定的全部意义在于控件显示数据源的内容。 然后它为用户提供一个 UI 以与该数据源进行交互。 如果要更改代码中的数据,请使用数据源,而不是 UI。

DataTable绑定到DataGridView ,正确的做法是在它们之间使用BindingSource并使用它来访问代码中的数据。 您可以在设计器中添加BindingSource ,然后像这样绑定:

Dim myDataTable As New DataTable

myDataAdapter.Fill(myDataTable)
myBindingSource.DataSource = myDataTable
myDataGridView.DataSource = myBindingSource

要添加一行,请在BindingSource上调用AddNew 这将返回新项目,即DataRowView 您填充它,然后将其提交到底层DataTableDataGridView将显示它,例如

Dim newRow = DirectCast(myBindingSource.AddNew(), DataRowView)

newRow("SomeColumn") = someValue
myBindingSource.EndEdit()

总而言之,不要直接使用DataTableDefaultView 请务必将DataTable绑定到BindingSource并将其绑定到您的 UI。 务必使用BindingSource在代码中操作和导航绑定数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM