[VB] añadir elemento en un combobox

Hola,

(estoy en visual basic),

cuando hago clic en un botón, agrego 2 elementos en mi combobox:

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

pero cuando vuelvo a hacer clic en este botón, me agrega los elementos por duplicado por ejemplo:

montext1
montext2
montext1
montext2

en lugar de:

montext1
montext2

sea cual sea la cantidad de veces que haga clic en el botón. Creo que hay algo relacionado con la propiedad index pero...

Gracias de antemano

4 respuestas

  1. Moderador
    hola

    Debes efectivamente designar el índice donde debes agregar el Item. Así que recupera el número de Items ya en el combobox, normalmente el primer índice es igual a cero, por lo que número de Items -1 te da el último índice utilizado.

    Si tienes 4 Items, el último se almacena en el índice 3.

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

    debería dar algo así, a verificar

    --
    Chouba,
    Pochard de asalto..
    0
    1. Hola a todos
      He visto algunas formas de agregar una lista de opciones en el combobox, pero cada vez que vuelvo a escribir lo mismo no funciona. Por ejemplo, combo1.additem "montext" o combo1.additem ("montext",combo1.listindex)
      ¿Cuál es la solución según ustedes???
      0
      1. quizás el lugar donde simplemente introduces el código.
        0
    2. hola...

      simplemente hay que hacer:
      ComboBox1.Clear, antes de cada recarga para borrar el contenido anterior de la lista...

      ¡Buena suerte!
      1
      1. Tengo casi el mismo problema, pero cuando escribo combobox.clear me dice "'clear' no es un miembro de System.Windows.Forms.ComboBox"
        espero tener una respuesta lo más pronto posible y gracias de antemano.
        0
    3. Hola,

      tuve el mismo problema y hice este código que verifica si el ítem a agregar ya existe:

      Si Form2.TextBox0.Text <> "" Entonces
      Para i = 0 Hasta ComboBox1.Items.Count - 1
      Si ComboBox1.Items(i) = UCase(Form2.TextBox0.Text) Entonces
      C = 1
      Fin Si
      Siguiente i
      Si C = 0 Entonces
      ComboBox1.Items.Add(UCase(Form2.TextBox0.Text))

      Fin Si
      Fin Si

      espero que te ayude
      0