Principales respuestas
Mostrar en blanco un combobox al cargar el formulario.

Pregunta
-
Estimados,
necesito saber como puedo dejar un combobox en blanco o que dija:"seleccione una opcion" al momento de cargar un formulario,
para luego, cargar mis comboboxs con procedimientos almacenados.
gracias de antemano!
Saludos!
PD:Visual studio 2008 (frameworks 3.5)
viernes, 6 de julio de 2012 20:59
Respuestas
-
"Gonaxo" preguntó:
> necesito saber como puedo dejar un combobox en blanco o que dija:
> "seleccione una opcion" al momento de cargar un formulario,
>
> para luego, cargar mis comboboxs con procedimientos almacenados.Hola:
Si el control ComboBox se encuentra enlazado a un origen de datos, no se puede modificar su colección «Items», por lo que obtendrás una excepción a la hora de añadir manualmente el elemento «Seleccione una opción», o te lo eliminará de la colección si el elemento lo has añadido antes de especificar un valor a la propiedad «DataSource».
La solución es bien fácil. Si no deseas añadir un nuevo registro a la tabla que utilizas como origen de datos, para que también figure el elemento «Seleccone una opción», tendrás que rellenar manualmente el control ComboBox de la siguiente manera:' Añadimos el primer elemento. ' ComboBox1.Items.Add("Seleccione una opción") ' Abrimos una conexión con una base de SQL Server ' para recuperar el nombre de todos los Clientes ' existentes en la base de datos. ' Using cnn As New SqlConnection(cadena de conexión) Try Dim cmd As SqlCommand = cnn.CreateCommand() cmd.CommandText = "SELECT * FROM Clientes" ' Abrimos la conexión ' cnn.Open() Dim dr As SqlDataReader = _ cmd.ExecuteReader(CommandBehavior.CloseConnection) ' Mientras recorremos el objeto DataReader, ' llenamos de elementos el control ComboBox. ' While dr.Read() ComboBox1.Items.Add(dr("Nombre").ToString()) End While ' Cerramos el lector de datos e implícitamente ' la conexión abierta. ' dr.Close() Catch ex As Exception MessageBox.Show(ex.Message) End Try End Using ' Seleccionamos el primer elemento ' ComboBox1.SelectedIndex = 0
Este código lo podrías ejecutar, por ejemplo, en el evento Load del formulario que contiene el control ComboBox.
Obviamente, el control ComboBox rellenado de la manera explicada, NO ESTARÁ ENLAZADO a ningún origen de datos.
Un saludoEnrique Martínez
[MS MVP - VB]Nota informativa: La información contenida en este mensaje, así como el código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin garantías de ninguna clase, y no otorga derecho alguno. Usted asume cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o sugerido en el presente mensaje.
Si esta respuesta le ha resultado útil, recuerde marcarla como satisfactoria.
Si usas Visual Basic .NET y deseas ser productivo y feliz, activa la instrucción Option Strict.
- Marcado como respuesta Gonaxo lunes, 9 de julio de 2012 12:57
sábado, 7 de julio de 2012 15:02Moderador
Todas las respuestas
-
Hola intenta con esto
tucombobox.SelectedIndex = -1
'la otra opcion Combobox.Text="Seleccione la opcion"
todo esto dentro del evento load del formulario- Propuesto como respuesta JoséLuisGarcía sábado, 7 de julio de 2012 14:45
viernes, 6 de julio de 2012 21:02 -
Hola Amigo:
como puedo dejar un combobox en blanco
ComboBox1.Items.Clear()
que dija:"seleccione una opcion"
ComboBox1.Text "<<<Seleccione una Opción>>>"
Espero te sirva.
Saludos!
Luis Escobar :D
sábado, 7 de julio de 2012 14:49 -
"Gonaxo" preguntó:
> necesito saber como puedo dejar un combobox en blanco o que dija:
> "seleccione una opcion" al momento de cargar un formulario,
>
> para luego, cargar mis comboboxs con procedimientos almacenados.Hola:
Si el control ComboBox se encuentra enlazado a un origen de datos, no se puede modificar su colección «Items», por lo que obtendrás una excepción a la hora de añadir manualmente el elemento «Seleccione una opción», o te lo eliminará de la colección si el elemento lo has añadido antes de especificar un valor a la propiedad «DataSource».
La solución es bien fácil. Si no deseas añadir un nuevo registro a la tabla que utilizas como origen de datos, para que también figure el elemento «Seleccone una opción», tendrás que rellenar manualmente el control ComboBox de la siguiente manera:' Añadimos el primer elemento. ' ComboBox1.Items.Add("Seleccione una opción") ' Abrimos una conexión con una base de SQL Server ' para recuperar el nombre de todos los Clientes ' existentes en la base de datos. ' Using cnn As New SqlConnection(cadena de conexión) Try Dim cmd As SqlCommand = cnn.CreateCommand() cmd.CommandText = "SELECT * FROM Clientes" ' Abrimos la conexión ' cnn.Open() Dim dr As SqlDataReader = _ cmd.ExecuteReader(CommandBehavior.CloseConnection) ' Mientras recorremos el objeto DataReader, ' llenamos de elementos el control ComboBox. ' While dr.Read() ComboBox1.Items.Add(dr("Nombre").ToString()) End While ' Cerramos el lector de datos e implícitamente ' la conexión abierta. ' dr.Close() Catch ex As Exception MessageBox.Show(ex.Message) End Try End Using ' Seleccionamos el primer elemento ' ComboBox1.SelectedIndex = 0
Este código lo podrías ejecutar, por ejemplo, en el evento Load del formulario que contiene el control ComboBox.
Obviamente, el control ComboBox rellenado de la manera explicada, NO ESTARÁ ENLAZADO a ningún origen de datos.
Un saludoEnrique Martínez
[MS MVP - VB]Nota informativa: La información contenida en este mensaje, así como el código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin garantías de ninguna clase, y no otorga derecho alguno. Usted asume cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o sugerido en el presente mensaje.
Si esta respuesta le ha resultado útil, recuerde marcarla como satisfactoria.
Si usas Visual Basic .NET y deseas ser productivo y feliz, activa la instrucción Option Strict.
- Marcado como respuesta Gonaxo lunes, 9 de julio de 2012 12:57
sábado, 7 de julio de 2012 15:02Moderador