Combinación VB.NetBox Controlar con EJEMPLO

⚡ Resumen inteligente

CombinadaBox en VB.Net es un Windows Control de formulario que combina un cuadro de texto con una lista desplegable, lo que permite al usuario seleccionar un solo elemento o escribirlo, ahorrando espacio en el formulario.

  • 🎯 Propósito: Mostrar una lista desplegable donde el usuario seleccione o escriba un valor.
  • Añadir elementos: Rellene el cuadro combinado en la ventana Propiedades o con Items.Add en tiempo de ejecución.
  • 🔍 Leer selección: SelectedItem, SelectedIndex y Text devuelven el valor seleccionado por el usuario.
  • 🗄️ Vincular datos: Configure DataSource, DisplayMember y ValueMember para cargar filas desde un conjunto de datos.
  • 🔔 Detectar cambios: El evento SelectedIndexChanged se activa cada vez que cambia el elemento seleccionado.
  • 🤖 Ayuda de IA: GitHub Copilot y Visual Studio IntelliCode escribir ComboBox manejadores mientras escribes.

Combinación VB.NetBox Control

¿Qué es el control Combobox?

El control de cuadro combinado le ayuda a mostrar una lista desplegable con muchos elementos. Considérelo como una combinación de un cuadro de texto en el que un usuario ingresa texto y una lista desplegable de la que un usuario selecciona un elemento. Tenga en cuenta que el cuadro combinado muestra un elemento a la vez.

Creando un cuadro combinado

Una combinaciónBox se puede crear de la siguiente manera:

Paso 1) Crear una nueva aplicación.

Paso 2) Arrastre un control de cuadro combinado desde la caja de herramientas al formulario.

Control de cuadro combinado de VB.Net arrastrado desde la caja de herramientas a un Windows Formulario

Habrás creado un control de cuadro combinado.

Agregar elementos al cuadro combinado

Ahora que hemos creado un cuadro combinado, demostremos cómo agregarle elementos.

Double Haga clic en el control de cuadro combinado que ha añadido. Pasará de la pestaña de diseño a la pestaña con código.

Para agregar un elemento a un control de cuadro combinado, utilizamos la propiedad Items. Demostremos esto agregando dos elementos al cuadro combinado, Male y Female:

ComboBox1.Items.Add("Male")
ComboBox1.Items.Add("Female")

También podemos optar por agregar elementos al cuadro combinado en tiempo de diseño desde la ventana Propiedades. Estos son los pasos:

Paso 1) Abra la pestaña de diseño y haga clic en el control de cuadro combinado.

Paso 2) Vaya a la ventana Propiedades y vea la opción Elementos.

Paso 3) Haga clic en los … ubicados a la derecha de (Colección).

Agregar elementos a un cuadro combinado de VB.Net mediante código con el método Items.Add.

Ventana de propiedades de VB.Net que abre el editor de la colección de elementos del cuadro combinado

Paso 4) Verá una nueva ventana. Aquí es donde debe agregar elementos al cuadro combinado, como se muestra a continuación:

El editor de colecciones de cadenas enumera los elementos del cuadro combinado masculino y femenino.

Paso 5) Una vez terminado con typing Para ver los elementos, haga clic en el botón Aceptar.

Paso 6) Haga clic en el botón Inicio de la barra de herramientas superior y haga clic en el icono desplegable del cuadro combinado.

Cuadro combinado de VB.Net que muestra "Masculino" seleccionado como elemento predeterminado en tiempo de ejecución.

Los elementos se agregaron correctamente al control del cuadro combinado.

Seleccionar elementos del cuadro combinado

Es posible que necesites configurar el elemento predeterminado que se seleccionará cuando se cargue el formulario. Puedes lograrlo mediante el método SelectedItem(). Por ejemplo, para configurar el género seleccionado predeterminado como Masculino, puedes usar la siguiente declaración:

ComboBox1.SelectedItem = "Male"

Al ejecutar el código, el control del cuadro combinado debería verse como se muestra a continuación:

Formulario VB.Net que muestra un cuadro combinado con las opciones Hombre y Mujer.

Recuperación de valores de cuadros combinados

Puedes obtener el elemento seleccionado de tu cuadro combinado. Esto se puede hacer usando la propiedad de texto. Demostremos esto usando nuestro cuadro combinado anterior con dos elementos: Hombre y Mujer. Sigue los pasos que se indican a continuación:

Paso 1) Double Haga clic en el cuadro combinado para abrir la pestaña con el código VB.Net.

Paso 2) Añada el siguiente código:

Public Class Form1
    Private Sub ComboBox1_SelectedIndexChanged(sd As Object, evnt As EventArgs) Handles ComboBox1.SelectedIndexChanged

        Dim var_gender As String

        var_gender = ComboBox1.Text

        MessageBox.Show(var_gender)
		
    End Sub
End Class

Paso 3) Haga clic en el botón Iniciar de la barra de herramientas para ejecutar el código. Debería obtener el siguiente formulario:

Code Captura de pantalla del controlador de eventos SelectedIndexChanged del cuadro combinado de VB.Net

Paso 4) Haz clic en el botón desplegable y elige tu género. En mi caso, elijo Masculino y obtengo lo siguiente:

Cuadro de mensaje de VB.Net que muestra el texto del elemento seleccionado del cuadro combinado: Masculino

Aquí hay una captura de pantalla del código:

Explicación de Code:

  1. Creando una clase llamada Form1. La clase será de acceso público ya que su modificador de acceso se ha establecido en Público.
  2. Iniciando un subprocedimiento llamado ComboBox1_SelectedIndexChanged. Este evento se genera automáticamente al hacer doble clic en el control de cuadro combinado desde la pestaña Diseño. Este subprocedimiento se ejecutará al seleccionar un elemento del cuadro combinado. El objeto sd As Object hace referencia al objeto que generó el evento, mientras que evnt As EventArgs contiene los datos del evento.
  3. Creando una variable de tipo String llamada var_gender.
  4. Establecer el valor de la variable var_gender al elemento que está seleccionado en el cuadro combinado.
  5. Imprimir el valor de la variable var_gender en un mensaje.Box.
  6. Fin del comboBox1_Subprocedimiento SelectedIndexChanged.
  7. Fin de la clase Form1.

Eliminar elementos del cuadro combinado

Es posible eliminar un elemento de su cuadro combinado. Hay dos formas de hacerlo: puede utilizar el índice del elemento o el nombre del elemento.

Cuando utilice el índice de elementos, debe utilizar la propiedad Items.RemoveAt() como se muestra a continuación:

ComboBox1.Items.RemoveAt(1)

En el ejemplo anterior, eliminamos el elemento ubicado en el índice 1 del cuadro combinado. Tenga en cuenta que los índices de los cuadros combinados comienzan en el índice 0, lo que significa que el comando anterior eliminará el segundo elemento del cuadro combinado.

Para eliminar el elemento usando su nombre, debe usar la propiedad Items.Remove() como se muestra a continuación:

ComboBox1.Items.Remove("Female")

El código anterior debería eliminar el elemento denominado Mujer del comboBox1.

Fuente de datos vinculante

Una combinaciónBox se puede completar a partir de un conjunto de datos. Considere la consulta SQL que se proporciona a continuación:

select emp_id, emp_name from employees; 

Puede crear una fuente de datos en un programa y luego usar el siguiente código para vincularla:

comboBox1.DataSource = ds.Tables(0)
comboBox1.ValueMember = "emp_id"
comboBox1.DisplayMember = "emp_name"

Esto le proporcionará una forma sencilla de completar su control de cuadro combinado con datos sin tener que escribir cada elemento individual.

Evento SelectedIndexChanged

Con frecuencia, querrás que tu programa reaccione en el momento en que el usuario seleccione un nuevo valor.

Este tipo de evento se invoca cuando se cambia el elemento seleccionado en el cuadro combinado. Es el evento que se debe utilizar cuando se necesita implementar una acción tras un cambio en el elemento seleccionado de un cuadro combinado. Demostremos esto mediante un ejemplo:

Paso 1) Crea un nuevo Windows Solicitud de formularios.

Paso 2) Después de eso, debe arrastrar y soltar dos controles de cuadro combinado en el formulario.

Dos controles de cuadro combinado colocados uno al lado del otro en VB.Net Windows Formulario

Paso 3) Double Haga clic dentro del formulario para abrir la pestaña de código. Ingrese el siguiente código:

Public Class Form1
    Private Sub Form1_Load(sd As Object, evnt As EventArgs) Handles MyBase.Load

        ComboBox1.Items.Add("Males")

        ComboBox1.Items.Add("Females")

    End Sub

    Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged

        ComboBox2.Items.Clear()

        If ComboBox1.SelectedItem = "Males" Then

            ComboBox2.Items.Add("Nicholas")

            ComboBox2.Items.Add("John")

        ElseIf ComboBox1.SelectedItem = "Females" Then

            ComboBox2.Items.Add("Alice")

            ComboBox2.Items.Add("Grace")

        End If
    End Sub
End Class

Paso 4) Haga clic en el botón Iniciar de la barra superior para ejecutar el código. Debería obtener el siguiente resultado:

Primer cuadro combinado rellenado con Hombres y Mujeres en Form_Load

Paso 5) Haga clic en el botón desplegable del primer cuadro combinado y seleccione Masculino. Mueva el cursor del ratón al segundo cuadro combinado y haga clic en su botón desplegable. Vea los elementos disponibles:

Segundo cuadro combinado que muestra a Nicholas y John después de seleccionar Hombres.

Paso 6) Muévase al primer cuadro combinado y elija MujerPase al segundo cuadro combinado y vea los elementos disponibles:

Segundo cuadro combinado que muestra a Alice y Grace después de seleccionar Mujeres.

Aquí hay una captura de pantalla del código:

Code Captura de pantalla del controlador SelectedIndexChanged de VB.Net con dos cuadros combinados.

Explicación de Code:

  1. Creando una clase llamada Form1.
  2. Inicio de un subprocedimiento llamado Form1_Load(). Este se activará una vez que se cargue el formulario. sd As Object hace referencia al objeto que generó el evento, mientras que evnt As EventArgs contiene los datos del evento.
  3. Agregar el artículo Machos al comboBox1.
  4. Agregar el artículo Hembras al comboBox1.
  5. Fin del subprocedimiento Form1_Load().
  6. Inicio de un subprocedimiento denominado ComboBox1_SelectedIndexChanged(). Se invocará cuando se seleccione un elemento en el primer cuadro combinado. El objeto que envía hace referencia al objeto que generó el evento, mientras que el objeto EventArgs contiene los datos del evento.
  7. hacer comboBox2 vacío, borre todos los elementos.
  8. Creando una condición. Comprobando si el elemento seleccionado en ComboBox1 es Hombres.
  9. Añade el artículo Nicholas al combo.Box2 cuando la condición anterior es verdadera, es decir, elemento seleccionado en ComboBox1 es hombre.
  10. Añade el artículo John al combo.Box2 cuando la condición anterior es verdadera, es decir, elemento seleccionado en ComboBox1 es Hombres.
  11. Creando una condición. Comprobando si el elemento seleccionado en ComboBox1 es Mujeres.
  12. Añade el artículo Alice al combo.Box2 cuando la condición anterior es verdadera, es decir, elemento seleccionado en ComboBox1 es Mujeres.
  13. Añade el artículo Grace al combo.Box2 cuando la condición anterior es verdadera, es decir, elemento seleccionado en ComboBox1 es Mujeres.
  14. Fin del bloque If.
  15. Fin del comboBox1Subprocedimiento_SelectedIndexChanged().
  16. Fin de la clase Form1.

Preguntas Frecuentes

Una combinaciónBox Ahorra espacio ocultando la lista hasta que se haga clic en la flecha y puede aceptar entrada de texto. Una listaBox Muestra todos los artículos a la vez y solo permite la selección.

DropDownStyle elige el comportamiento: DropDown (predeterminado) permite al usuario escribir texto libre; DropDownList restringe la entrada a los elementos de la lista; Simple mantiene la lista abierta en todo momento.

SelectedIndex devuelve la posición basada en cero, SelectedItem devuelve el objeto vinculado a esa fila y Text devuelve la cadena en el cuadro de edición, incluido el texto que el usuario escribió.

Combinación de llamadasBox1.Items.Clear() para vaciar la lista. Para restablecer también el texto que se muestra en el cuadro de edición, siga con Combo.Box1.SelectedIndex = -1 o establecer ComboBox1.Texto = Cadena.Vacío.

Establezca la propiedad DropDownStyle en DropDownList en la ventana Propiedades o en el código (ComboBox1.Estilo desplegable = CombinadoBoxEstilo.Lista desplegable). El usuario solo podrá seleccionar elementos que ya estén en la lista.

El evento TextChanged se activa mientras el usuario edita la parte del cuadro de texto. El evento SelectedIndexChanged se activa solo cuando cambia el elemento resaltado en la lista desplegable, ya sea mediante el ratón, el teclado o el código.

Sí. Copiloto de GitHub Convierte un comentario en inglés simple en un bloque completo SelectedIndexChanged o DataBindings. Siempre revise el código generado antes de enviarlo.ping.

Sí. Visual Studio 2026 combina Copilot con inteligenciaCode para completaciones de línea completa y sensibles al contexto de ComboBox propiedades y eventos.

Resumir este post con: