2016-08-07 17 views
1

ich nur ein Element in ListView löschen möchten, hier ist ein Screenshot: screenshothinzufügen oder löschen Wert in Listview

For i As Integer = 0 To 9 Step 1 
    ListView1.Items.Add("Item111" & (i + 2)) 
    ListView1.Items(i).SubItems.Add("Sub Item 1") 
    'remove value 
    ListView1.Items(i).SubItems(1).Text = "" 
    'add value, error return 
    ListView1.Items(i).SubItems(1).Text = "200" 
Next 

Wenn ich Wert Text Sub item 1 löschen kann es jedoch löschen, wenn einige Mehrwert wie 200 Ich bekomme einen Fehler. Warum?

+0

Warum don tust du den Code, der nicht funktioniert? – Steve

+0

ListView1.Items (i) .SubItems (1) .Text = "200" dieser Zeilencode funktioniert nicht. – jeon

Antwort

0

Ein Blick auf Ihre Code scheint es ziemlich klar, dass Sie versuchen, einen Index zu einer Unterelemente, die nicht existiert zu verwenden. In Net startet der Index jedes Array bei Index 0 nicht bei Index 1. Sie fügen Sie einfach ein subitem zu Ihrem ListViewItem so, wenn Sie es ändern wollen, müssen Sie den Index verwenden 0 nicht den Index 1

For i As Integer = 0 To 9 Step 1 
    ListView1.Items.Add("Item111" & (i + 2)) 
    ListView1.Items(i).SubItems.Add("Sub Item 1") 
    ' No need to set the subitem to blank and the set it to 200 
    ' change the subitem directly to the new value 
    ListView1.Items(i).SubItems(0).Text = "200" 
Next 
0

Wenn diese Zeile Sie einen Fehler geben, könnte es sein, weil Sie versuchen, eine ganze Zahl in eine Text Eigenschaft zuweisen, versuchen

Ändern
ListView1.Items(i).SubItems(1).Text = 200 

zu

ListView1.Items(i).SubItems(1).Text = "200" 
+0

ja bereits ich Test mit Zeichenfolge Wert funktioniert auch nicht .. Sorry typoerror – jeon