hansoctantan Ответов: 3

VB.NET ListView вставить элемент в первую строку.


Я создаю программу, которая загружает файл с ftp-сервера.
Помещая все загруженные файлы и загружая файлы в ListView.
Я хочу определить приоритет загружаемого файла, поэтому я хочу добавить элемент в первый индекс.

Я пытаюсь использовать этот пример кода, но он не работает.
'FIRST DOWNLOAD
With lstDownload.Items.Add("Sample", 0)
        .SubItems.Add(2)
        .SubItems.Add(3)
        .SubItems.Add(4)
        .SubItems.Add(5)
        .SubItems.Add(6)
        .SubItems.Add(listDownload.Count - 1)
    End With
'SECOND DOWNLOAD
    With lstDownload.Items.Add("Sample1", 0)
        .SubItems.Add(2)
        .SubItems.Add(3)
        .SubItems.Add(4)
        .SubItems.Add(5)
        .SubItems.Add(6)
        .SubItems.Add(listDownload.Count - 1)
    End With


В этом примере я хочу сначала отобразить "Sample1" в ListView.

Может ли кто-нибудь опубликовать код/предложение к этому.

Спасибо заранее... полностью оценено

3 Ответов

Рейтинг:
21

Valery Possoz

Привет,

Решение состоит в том, чтобы использовать Insert вместо Add.

'FIRST DOWNLOAD
With lstDownload.Items.Add("Sample", 0)
    .SubItems.Add(2)
    .SubItems.Add(3)
    .SubItems.Add(4)
    .SubItems.Add(5)
    .SubItems.Add(6)
    .SubItems.Add(listDownload.Count - 1)
End With
'SECOND DOWNLOAD
With lstDownload.Items.Insert(0, "Sample1", 0)
    .SubItems.Add(2)
    .SubItems.Add(3)
    .SubItems.Add(4)
    .SubItems.Add(5)
    .SubItems.Add(6)
    .SubItems.Add(listDownload.Count - 1)
End With



Валери


Рейтинг:
2

tiggerc

вы могли бы попробовать что-то вроде

Dim listDownloads as New List(of ListViewItem)

Dim lvItem as ListViewItem

lvitem = New ListViewItem()
lvitem.text = "Sample"
lvitem.subitems.add(2)
lvitem.subitems.add(3)
lvitem.subitems.add(4)
lvitem.subitems.add(5)
lvitem.subitems.add(6)
'Set your colour and stuff here
'lvitem.backcolor

listDownloads.add( lvitem ) 'Add the item to an array

'Now add the items to the listview
Dim iCount as integer

For iCount = yourlistview.items.count -1 to 0 step -1
  yourlistview.items.add( lvitem )
Next


Рейтинг:
0

gaurigan

private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
{
        ListViewItem lvi = new ListViewItem("Add "+DateTime.Now);
        ListViewItem.ListViewSubItem lvsi = new ListViewItem.ListViewSubItem();
        lvsi.Text = DateTime.Now.ToString();
        lvi.SubItems.Add(lvsi);
        _list.Insert(0, lvi);
        listView1.Invalidate();
}