Bonjour,
Apres une apres-midi de rehcerche je me decide à creer une discussion.
Je dispose de deux listbox ainsi que deux bouton contenus dans un formulaire.
Au chargement de la fenetre la premiere listbox est remplie à partir d'une datatable.
Le premier bouton permet de transferer un element selectionné de la premiere listbox à la deuxieme.
Le deuxieme bouton est censé faire la manipulation inverse, c'est à dire transferer un element de la deuxieme listbox à la premiere.
Malheureusement, je n'arrive pas à recuperer la valeur de l'element selectionnée. La methode getItemText me renvoie au mieux un entier.
Voici le code:
Edit: j'ai trouve, le fait de définir la propriété datasource de la listbox m'empechait de récupérer la valeur d'un item. Finalement j'ajoute chaque item du datatable à la listbox individuellement et la méthode getitemtext me permet de récupérer la valeur.
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
27
28
29
30
31
32
33 Sub GestionProductionLoad(sender As Object, e As EventArgs) 'remplissage de la datatable Me.datatable = MainForm.getconnectionprincipale.GetData("select poincon from soudeurs",MainForm.getconnectionprincipale.getConnection()) 'remplissage de la liste des soudeurs listesoudeurs.datasource = me.datatable listeSoudeurs.displaymember = "poincon" 'initialisation liste participants listeParticipants.displaymember = "poincon" End Sub 'ajoute un participant Sub BoutonAjouterClick(sender As Object, e As EventArgs) If listeSoudeurs.SelectedItems.Count = 1 Then 'ajoute le soudeur selectionne a la liste des participants listeParticipants.Items.Add(listeSoudeurs.SelectedItem) 'supprimme le soudeur selectionne du datatable Me.datatable.Rows.removeat(listeSoudeurs.SelectedIndex) 'rafraichit la liste des soudeurs à partir du dattable modifié listesoudeurs.datasource = Me.datatable End If End Sub 'supprimme un participant Sub BoutonSupprimmerClick(sender As Object, e As EventArgs) If listeParticipants.SelectedItems.Count = 1 Then Dim ligne As System.Data.DataRow ligne = Datatable.NewRow() ligne.Item(0) = listeParticipants.GetItemText(listeParticipants.SelectedItem) Datatable.Rows.Add(ligne) listesoudeurs.datasource = Me.datatable listeParticipants.Items.Remove(listeParticipants.SelectedItem) End If End Sub
Partager