2014-02-15 48 views
2

每當我嘗試運行以下代碼以將單個行插入我的listview時,出現錯誤"InvalidArgument=Value of '1' is not valid for 'index'"....錯誤InvalidArgument =當試圖將項目添加到列表視圖時,'1'的值對'索引'無效 - VB

  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

,你可以做'LW的一部分自動創建它採用0不需要第一個被改變。 Items.Add(CStr(newTri.nextTriID))。SubItems.AddRange(CStr(newTri.sideOne),CStr(newTri.sideTwo),CStr(newTri.sideThree))' –

回答

2

雖然ListView有列,ListViewItem本身不會自動獲得這些列。相反,你必須一次添加一個。改變.SubItems最後3種用途爲以下

.SubItems.Add(CStr(newTri.sideOne)) 
.SubItems.Add(CStr(newTri.sideTwo)) 
.SubItems.Add(CStr(newTri.sideThree)) 

,因爲它爲創建ListViewItem

+0

謝謝,我找不到任何如此清晰像這樣解釋。 – codingManiac

相關問題