Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: jorgexl30 en 5 Noviembre 2009, 15:23 pm



Título: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: jorgexl30 en 5 Noviembre 2009, 15:23 pm
hola como estan aca nuevamente con otro problema les cuento

tengo un DropDownList lo lleno desdee una base de datos pero necesito que quede selecionado un dato que esta guardado pero no se como se hace
ojala me puedan ayudar de antemano gracias
 el dato se lo paso de lo tengo en una variable

Código
  1. nmprofesor = leer("Nombre_Profesor")
  2.  
  3. Dim buscar1 As Data.SqlClient.SqlDataReader
  4. Dim consultar1 As New SqlCommand("SELECT NOMBRE FROM profesores order by nombre", conexión)
  5. buscar1 = consultar1.ExecuteReader()
  6. Profesor.DataSource = buscar1
  7.  
  8. Profesor.DataTextField = "NOMBRE"
  9. Profesor.DataValueField = "NOMBRE"
  10. Profesor.DataBind()
  11. buscar1.Close()

 :huh:

Nota del mod: con etiquetas queda más legible


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: Novlucker en 5 Noviembre 2009, 15:43 pm
Replay, creo que no entendí la duda XD ... hoy estoy lento XD

Llegas a llenar el DropDownList? si, pero ahora quieres obtener el valor?

Saludos


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: jorgexl30 en 5 Noviembre 2009, 16:20 pm
hola gracias por contestar  lleno un DropDownList   desde una tabla  tengo otra tabla con un dato guardado entonces en el formulario cuando lista el el DropDownList necesito que quede selecionado el dato que esta guardado que se supone que esta guardod en la primera tabla tambien
ojal me hallas entendido


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: Novlucker en 5 Noviembre 2009, 16:42 pm
. . . . . . . . . . . . . . . . . . . . . . . . . ....... No  :xD

Pero veamos si entiendo otra vez, .. tienes un dropdownlist con valores, y ahora quieres poder elegir uno de esos valores y obtener el que corresponde a otra tabla o columna de la tabla verdad?

Lo que ocurre es que necesitas hacer uso de otro contenedor SQL .. revisa SQLDataAdapter, con este "guardas" la información en memoria, y luego puedes acceder a los datos de esta como si fuera una tabla o matriz

Ej:
:http://www.onglasses.net/Default.aspx?id=1179

Saludos


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: jorgexl30 en 5 Noviembre 2009, 16:57 pm
jeje nop quiero hacer un selected="true"

eso quiero al llenar el  DropDownList   que me compare con una variable ycuando recorra el el DropDownList  y la encuentre me lo deje selecionado  o con el foco

hay se entiende mejor?
 ;-)


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: Novlucker en 5 Noviembre 2009, 17:22 pm
Ah! :D

Código
  1. dropdownlist.selectedindex = 5

Para buscar también puedes hacer uso de los métodos findbyvalue o findbytext del drop

Saludos


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: jorgexl30 en 5 Noviembre 2009, 19:18 pm
si hay funciono muchas gracias 

la otra duda que tengo es como se hace cuando se coloca

en el  DropDownList 

Seleccione un valor para que salga ...

de antemano mucgas gracias


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: Novlucker en 5 Noviembre 2009, 19:22 pm
Te refieres a que el primer valor de la lista sea "Seleccione un valor"?

Lo cargas a mano ...
Código
  1. dropdownlist.items.add("Seleccione un valor")

Y cuando trabajes con cualquiera de los valores que aparece ahí, verificas que el indice no sea el 0 (primero), si es 0 lo ignoras, si es distinto de cero, haces lo que sea que tienes que hacer

Saludos


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: jorgexl30 en 5 Noviembre 2009, 20:01 pm
no resulta   aso lo hice


            Dim ver2 As Data.SqlClient.SqlDataReader
            Dim consultar2 As New SqlCommand("SELECT *  FROM DIAS ", conexión)
            ver2 = consultar2.ExecuteReader()
            Me.Dia1.DataSource = ver2
            Me.Dia1.items.add("Seleccione un valor")
            Me.Dia1.DataTextField = "DIAS"
            Me.Dia1.DataValueField = "VALUES"
            Me.Dia1.DataBind()
            ver2.Close()


Título: Re: como Seleciionar un dato de un DropDownList desde una base de datos
Publicado por: Hadess_inf en 5 Noviembre 2009, 20:37 pm
Bueno, es por eso que se debe tratar de manejar los terminos adecuados (o que lleguen a alguna similitud con lo que se desea dar a entender) cuando se hace una consulta.

Tu primer error radica en que estas llenando tu DDL(1) en el load, ademas tambien es mas que seguro que tu DDL(1) tiene activada la propiedad AutoPostBack:

sub page_load()
 'codigo que llena el dropdownlist
end sub

Cada vez que tu pagina carge, tu DDL(1) capturara el origen de datos y se llenara completamente, pero ademas de llenarse tambien pondra el foco en el primer elemento, para evitar eso simplemente tienes que decirle que no lo vuelca a cargar cuando la pagina hizo postBack,

sub page_load()
 if not page.ispostback then
  'codigo que llena el dropdownlist
 end if
end sub

Tu segundo error radica en que no puedes establecer un origen de datos con un elemento agregado previamente (por lo menos no lo he intentado, y no creo que se pueda), lo que tienes que hacer es recorrer la tabla que contiene la consulta con un FOR, e ir agregando al combo cada elemento.

Saludos.


1* DropDownList