Vb.net 如何将值从ListView传递到Datagridview

Vb.net 如何将值从ListView传递到Datagridview,vb.net,listview,datagridview,Vb.net,Listview,Datagridview,我正在使用Visual Basic 2008。我有一个ListView和一个DataGridView,它们都有3列,如ProductCode、ProductName和ProductPrice。现在我想以相同的顺序将ListView值传递给DataGridView。当我双击ListView中的任何一行时,我希望这些行值插入DataGridView Private Sub ListView1_DoubleClick(ByVal sender As Object, ByVal e As System.

我正在使用Visual Basic 2008。我有一个ListView和一个DataGridView,它们都有3列,如ProductCode、ProductName和ProductPrice。现在我想以相同的顺序将ListView值传递给DataGridView。当我双击ListView中的任何一行时,我希望这些行值插入DataGridView

Private Sub ListView1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.DoubleClick 
    If Not ListView1.SelectedItems.Count = 0 Then 
         '// check if item is selected. 
        With ListView1.SelectedItems(0) 
            Dim lvItem() As String = {.Text, .SubItems(1).Text, .SubItems(2).Text} 
            '// get ListView selectedItem. 
            DataGridView1.Rows.Add(lvItem) '// add it to DataGridView. 
        End With 
    End If 
End Sub

您应该在单击listview时检查事件,并在该事件上创建编辑datagridview的内容:)

也许这会起作用

Private Sub ListView1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListView1.DoubleClick 
    If Not ListView1.SelectedItems.Count = 0 Then 
         '// check if item is selected. 
        With ListView1.SelectedItems(0) 
            Dim lvItem() As String = {.Text, .SubItems(1).Text, .SubItems(2).Text} 
            '// get ListView selectedItem. 

            'Assumed that TableDGV as your DGV datasource

            TableDGV.Rows.Add(lvItem) '// add it to DataGridView. 
            DataGridView1.DataSource = TableDGV


        End With 
    End If 
End Sub

databound datagridview?但显示以下错误消息“当控件为数据绑定时,无法以编程方式将行添加到datagridview的行集合。”@zahidmahmood。。无法在数据绑定DGV中添加行。。您应该添加到DGV数据源-->数据表请给我任何添加DGV数据源的示例Datatable@zahidmahmood .. 查找类似“将行添加到表”的内容。。。谷歌会帮你的。像这样的回答更恰当地说是一条评论,IMO。谢谢mat你的代码正在工作,但如何避免重复值传入datagridview说如果产品已经存在于datagridview中,它会显示消息产品已经存在于gridview中如果我单击“替换产品”,你想替换吗replaced@zahidmahmood .. 如果这有帮助的话,你可以投票选这个作为答案。。为了避免重复,你可以看到。。