2016-08-07 6 views
1

Я хочу, чтобы удалить только один элемент в ListView, вот скриншот: screenshotдобавить или удалить значение в 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 

Если удалить текст значение Sub item 1 можно удалить, однако, когда добавить некоторую ценность как 200 Я получаю ошибку. Зачем?

+0

Почему бы Вы не добавляете код, который не работает? – Steve

+0

ListView1.Items (i) .SubItems (1) .Text = "200" этот код строки не работает. – jeon

ответ

0

Глядя на ваш код кажется довольно ясным, что вы пытаетесь использовать индекс для подэлементов, которые не существуют. В Сети индекс любого массива начинается с индексом-не индекс 1. Вы добавляете только один подэлемент к вашему ListViewItem, так что если вы хотите изменить его, вы должны использовать индекс-не индекс 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

Если эта строка дает вам сообщение об ошибке, это может быть потому, что вы пытаетесь присвоить целое число в текстовом собственности, попробуйте изменить

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

в

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

Да, я уже тестирую со строковым значением и не работает. – jeon