[VB] ajout d'élément dans une combobox

bonjour,

(je suis en visual basic),

lorsque je clique sur un bouton , j'ajoute 2 éléments dans ma combobox :

macombo.AddItem (montext1)
macombo.AddItem (montext2)

mais lorsque je reclic sur ce bouton , il m'ajoute en double les éléments ex :

montext1
montext2
montext1
montext2

au lieu de :

montext1
montext2

quelque soit le nombre de fois où je clique sur le bouton.Je crois qu'il y a quelque chose avec la propriété index mais...

Merci d'avance

4 réponses

  1. hello...

    il suffit de faire :
    ComboBox1.Clear, avant chaque rechargement afin d'effacer le contenu précédent de la liste...

    Good luck !
    1
    1. j presque aussi le méme probléme mais quand je tape combobox.clear il me donne "'clear' n po un membre de System.windows.forms.combobox"
      jéspère avoir une réponse dans le plus vite possible et merci d'avance
      0
  2. Modérateur
    salut

    Tu dois effectivement désigner l'index où tu dois ajouter l'Item. Donc récupérer le nombre d'Item déjà dans le combobox normalement le premier index est égal à zéro, donc nombre d'Item -1 te donne le dernier index utilisé.

    Si tu dispose de 4 Item, le dernier est stocké dans l'index 3.

    ComboBox1.AddItem("test", ComboBox1.ListIndex);

    ça doit donner un truc comme ça, à vérifier

    0
    1. bonjour tt le monde
      j'ai vu qq façon pr ajouter une liste des choix ds la combobox mais à chq fois q j'retape la mm chose ça marche pa par exemple combo1.additem "montext" ou bien combo1.additem ("montext",combo1.listindex)
      c koi la solution à votre avis???
      0
      1. peut-être l'endroit où vous tapez le code tout simplement.
        0
    2. Bonjour,

      j'ai eu le même problème, et j'ai fait ce code qui regarde si l'item à ajouter n'existe pas déjà :

      If Form2.TextBox0.Text <> "" Then
      For i = 0 To ComboBox1.Items.Count - 1
      If ComboBox1.Items(i) = UCase(Form2.TextBox0.Text) Then
      C = 1
      End If
      Next i
      If C = 0 Then
      ComboBox1.Items.Add(UCase(Form2.TextBox0.Text))

      End If
      End If

      j'espère que ça va t'aider
      0