每当我尝试运行以下代码以在我的listview
中插入一行时,我会收到错误"InvalidArgument=Value of '1' is not valid for 'index'"....
Dim item As New ListViewItem
With item
.SubItems(0).Text = CStr(newTri.nextTriID)
.SubItems(1).Text = CStr(newTri.sideOne)
.SubItems(2).Text = CStr(newTri.sideTwo)
.SubItems(3).Text = CStr(newTri.sideThree)
End With
lstTris.Items.Add(item)
我的listview
有列 - 为它指定了TriangleID,SideOne,SideTwo和SideThree,我正在尝试将上面的项目添加到用户创建的每个三角形的每个相应列中,但我不确定它为什么是给我一个错误?
答案 0 :(得分:2)
虽然ListView
有列,ListViewItem
本身不会自动获取这些列。相反,你必须一次添加一个。将.SubItems
的最后3次使用更改为以下
.SubItems.Add(CStr(newTri.sideOne))
.SubItems.Add(CStr(newTri.sideTwo))
.SubItems.Add(CStr(newTri.sideThree))
使用0
的第一个不需要更改,因为它是作为创建ListViewItem