VB .net ListView控件未显示任何形式的数据

时间:2019-06-04 03:09:51

标签: vb.net listview

这是我的表单,是通过表单编辑器手动创建的listview列:

enter image description here

这是我的后端:

    Public Class LineItemProducts

    Private Sub LineItemProducts_Load(sender As Object, e As EventArgs) Handles MyBase.Load, lvLineItemProduct.SelectedIndexChanged
        Dim lineItem = New LineItemDB()

        'Getting lineItems from db by previous method
        Dim res = lineItem.GetLineItems().ToList()

        'Sorting the list by InvoiceID - by LinQ
        res.Sort(Function(x, y) x.InvoiceID.CompareTo(y.InvoiceID))
        lvLineItemProduct = New ListView
        Dim lvitem As ListViewItem

        For Each element As LineItem In res
            lvitem = New ListViewItem
            lvitem.Text = element.InvoiceID.ToString()

            'lvitem.SubItems.Add(element.InvoiceID.ToString())
            lvitem.SubItems.Add(element.ProductCode.ToString())
            lvitem.SubItems.Add(element.UnitPrice.ToString())
            lvitem.SubItems.Add(element.Quantity.ToString())
            lvitem.SubItems.Add(element.ItemTotal.ToString())
            lvLineItemProduct.Items.Add(lvitem)

        Next

    End Sub

End Class

在上面的代码中,当我调试时,将来自db的30个数据添加到lvLineItemProduct中,但是在输出形式中,没有数据显示!

我确定,由于我不是VB中的常规开发人员,所以错过了一些非常愚蠢的东西。

1 个答案:

答案 0 :(得分:0)

我知道这很简单。检查几行代码后,我发现了问题本身。因为,我再次在表单加载中初始化了listView控件。只需删除以下行即可

lvLineItemProduct = New ListView

如果涉及到任何人的帮助,我会保留问题并回答自己