Bonsoir à tous,
Je fais actuellement mes premières classes avec VB, J'avoue avoir un peu de mal par rapport à PHP. Enfin, j'ai un problème je cherche à recuperer l'attribut Tag que j'ai au préalable renseigné lorsque j'ai généré ma ListBox. Le Tag contient l'index des enregistrements.
Mais je n'y arrive pas. Quand elle n'est pas triée l'attribut correspond bien à la position dans la liste. Mais une fois trié les résultats sont délirants.
Voila le code pour l'enregistrement
Et pour la lecture je me contente de faire
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 Private Sub ListConsul() Dim X As New docXML("data.xml") Dim XmlDoc As XmlDocument = New XmlDocument() Dim count As Integer Dim i As Integer Dim t As String Dim pos As Integer ListBox1.Items.Clear() count = X.countElements("/data/fiche") ReDim ListBox1.Tag(count) For i = 1 To count t = X.getElementValue("/data/fiche/etatcivil/nom", i) + " " + X.getElementValue("/data/fiche/etatcivil/prenom", i) pos = ListBox1.Items.Add(t) ListBox1.Tag(pos) = i Next i debugBox.Text = "Count :" & count End Sub
Le reste du code génère l'affichage de champ dans le formulaire donc pas utile pour le problème
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Private Sub ListBox1_SelectedIndex(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged Dim X As New docXML("data.xml") Dim XmlDoc As XmlDocument = New XmlDocument() Dim i As Integer Dim a As Integer i = ListBox1.SelectedIndex i = i + 1 a = ListBox1.Tag(ListBox1.SelectedIndex) ....
Est ce l'appel de ma fonction Tag qui n'est pas fait correctement?
Y'a t'il un autre moyen plus fiable pour récupérer l'index dans la liste.
En fait comme on peut le voir la ListBox est constitué d'info tiré d'un XML.
Le XML n'est pas trié de façons alphabétique. Et je souhaite que l'utilisateur obtienne une liste trié.
J'ai pas trouvé mon bonheur sur MSDN
Je post en désespoir de cause parce que du coup je butte là dessus et j'avance pas car c'est un problème majeur vu que je vais me resservir de la solution plus loin dans mon programme.
Merci d'avance pour toutes pistes pour résoudre ce problème.
Partager