Bonjour,

j'ai une tâche multithread qui doit faire une écriture dans un listeview
mais je comprend pas pk mon lv a un invoke.required = true

voici mon code


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
'Au debut de la classe 
Delegate Sub UIOneArgSub(ByVal Msg As String)
Dim DelRecLVStat As UIOneArgSub
 
'Dans mon sub 
Dim Msg As String = (r.Item(0) & ";" & r.Item(1) & ";" & r.Item(2) & ";" & r.Item(3))
            DelLVStat(Msg)
 
 
Sub DelLVStat(ByVal msg As String)
        If Not LVStat2.InvokeRequired Then
            Dim MaStr() As String
            MaStr = msg.Split(";")
            Dim LVI As New ListViewItem
            LVI.UseItemStyleForSubItems = False
            LVI.Text = MaStr(0)
            LVI.SubItems.Add(MaStr(1))
            LVI.SubItems.Add(MaStr(2))
            LVI.SubItems.Add(MaStr(3))
            LVStat2.Items.Add(LVI)
        Else
            DelRecLVStat = New UIOneArgSub(AddressOf DelLVStat)
            Me.BeginInvoke(DelRecLVStat, New Object() {msg})
        End If
    End Sub
pourtant dans une autre form la sequense fonctionne bien

merci de vos suggestions

Mario