как убрать мерцание ListView при заполнении его из коллекции

net

With lvwTelnet

.Items.Clear()
If strBand = "" Or strBand = "ALL BANDS" Then

For n As Integer = 0 To spots.Count - 1

Dim item As New ListViewItem(spots.Item(n).DX, ImgIndex(FindDX(spots.Item(n).DX)))
item.SubItems.Add(TimeStrFormat(spots.Item(n).UTC))
item.SubItems.Add(spots.Item(n).Frequency)
item.SubItems.Add(spots.Item(n).De)
item.SubItems.Add(spots.Item(n).Comment)

.Items.Add(item)
Next
If .Items.Count > 0 Then .EnsureVisible(.Items.Count - 1)


End With
On Error GoTo 0
SetAlternatingRowColors(lvwTelnet, Color.White, Color.Silver)

Примечание:
Язык Visual Basic.Net 2008

Примечание:
Invalidate() не очень помогает
Дело в том что загрузка идет в Bg Woker-e
Private Sub MyTelnet_DataReceivedEvent(ByVal sender As Object, ByVal e As Jscape.Telnet.TelnetDataReceivedEventArgs) Handles MyTelnet.DataReceivedEvent
On Error Resume Next
Dim x As String = MyTelnet.Encoding.GetString(e.Data)


Dim matchs As MatchCollection = New Regex("(?<spotter>([a-zA-Z\-\/]{0,}\d?/){0,}([\da-zA-Z\-\/]+\d{1,2}[a-zA-Z\-\/]+){1}(/[\da-zA-Z\-\/]{1,}){0,}):?(\s+)(?<freq>([\d\.]{1,}))(\s+)(?<dx>([a-zA-Z\-\/]{0,}\d?/){0,}([\da-zA-Z\-\/]+\d{1,2}[a-zA-Z\-\/]+){1}(/[\da-zA-Z\-\/]{1,}){0,})(\s+)(?<comment>([\(\)\%\^\#\@\'\w\s\<\>\/\+\!\-\+\.\~\&\?]+))(\s+)(?<time>(\d{4}))", (RegexOptions.Compiled Or RegexOptions.IgnoreCase)).Matches(x)
If (matchs.Count <> 0) Then
Me.clusterDataStream.Add(New TelnetDXClusterInfo(matchs.Item(0).Groups.Item("time").Value.Trim, matchs.Item(0).Groups.Item("dx").Value.Trim, matchs.Item(0).Groups.Item("spotter").Value.Trim, matchs.Item(0).Groups.Item("comment").Value.Trim, matchs.Item(0).Groups.Item("freq").Value.Trim))
If Me.BgWrkData.IsBusy = False Then Me.BgWrkData.RunWorkerAsync(Me.DataStream)


End If

End Sub
Ответы:
это чеза язык? если есть такой параметр то после Items.add(item) добавь:
ListView.BeginInit


15 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.