Problème avec DataGridView
Bonjour,
j'ai une application client qui reçoit les données d'un serveur que j'affiche dans un DataGridView.
Seulement lorsque celle-ci s'affiche,le tableau rajoute des lignes vides à la fin du tableau...Et si je reçoit de nouvelles données d'autres lignes vides vont se rajouter à la fin du tableau.
Voici ma fonction qui traire les données et les mets dans le tableau:
Code:
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 27
|
Function MiseEnFormeDonnees(ByVal data As String) As Integer
Dim Tab() As String = Split(data, SEP) ', , CompareMethod.Text)
Dim i As Integer = 0
Dim j As Integer = 0
For Each kvp As KeyValuePair(Of String, String) In Dico.DicEssais
If kvp.Value <> Nothing Then
DataGridView1.Rows.Add()
DataGridView1.Rows(j).Cells(0).Value = kvp.Value
j = j + 1
End If
Next kvp
For Each Element In Tab
If Element <> Nothing Then
DataGridView1.Rows.Add()
DataGridView1.Rows(i).Cells(1).Value = Element
i = i + 1
End If
Next
Return Tab.Length
End Function |
et voilà le code de ma fonction qui permet de recevoir les données et qui fait appel à la fonction Du dessus pour traiter les données:
Code:
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 27 28 29 30 31 32 33 34 35 36 37 38 39
|
Function recevoir() As String
Dim returnData As String = Nothing
Dim inStream(10024) As Byte
Dim serverStream As NetworkStream
Dim x As Integer = 0
If clientSocket.Connected Then
Try
serverStream = clientSocket.GetStream()
serverStream.Read(inStream, 0, CInt(clientSocket.ReceiveBufferSize))
returnData = System.Text.Encoding.ASCII.GetString(inStream)
Dim len As Integer = returnData.IndexOf("$")
If len < 0 Then
len = 0
End If
If Donnees.ETAT = Donnees.ATTE Or Donnees.ETAT = Donnees.CONN Then
MiseEnFormeConn(returnData)
Else
If Donnees.ETAT = Donnees.AUTH Then
x = MiseEnFormeDonnees(returnData)
MsgBox(x)
End If
End If
returnData = returnData.Substring(0, len)
Catch ex As Exception
'MsgBox(ex.Message)
msg(Donnees.ERR_REC)
End Try
End If
Return returnData
End Function |
je ne vois pas où est le problème.Merci d'avance:ccool: