Foros del Web » Programando para Internet » ASPX (.net) »

problemas con dropdownlist

Estas en el tema de problemas con dropdownlist en el foro de ASPX (.net) en Foros del Web. HolaEs que tengo un pequeño problema con un dropdownlist.... yo hago una actualización de datos pero antes de hacer la actualizacion yo lleno los controles ...
  #1 (permalink)  
Antiguo 29/11/2005, 11:24
Avatar de kejos  
Fecha de Ingreso: septiembre-2005
Mensajes: 100
Antigüedad: 18 años, 7 meses
Puntos: 0
problemas con dropdownlist

HolaEs que tengo un pequeño problema con un dropdownlist....

yo hago una actualización de datos pero antes de hacer la actualizacion yo lleno los controles con los datos existentes asi:

Código:
SqlDataAdapter DaEdu;

DataSet DSEdu = new DataSet();

//Consulta educacion

String doc2 = Session["MySessionVar"].ToString();

MyCon = new SqlConnection(cadenaConexion);

DaEdu = new SqlDataAdapter("spEducacion", MyCon);

DaEdu.SelectCommand.CommandType = CommandType.StoredProcedure;

SqlParameter parameter1 = new SqlParameter("@docidentidad", SqlDbType.VarChar,30);

parameter1.Value= doc2; 

DaEdu.Fill(DSEdu,"TipoEducacion");

DaEdu.Fill(DSEdu,"Educacion");

DaEdu.Fill(DSEdu,"Institucion");

DaEdu.Fill(DSEdu,"Pais");

DaEdu.Fill(DSEdu,"Ciudad");

DaEdu.Fill(DSEdu,"Nivel");

//llevar datos a controles correspondientes

string tipedu=System.Convert.ToString(DSEdu.Tables["TipoEducacion"].Rows[0]["tipoeducacion"]);

ListItem item =this.DdlTipoEst.Items.FindByText(tipedu);

if(item!=null)

    item.Selected = true;

else

    return;//no se ha encontrado en la coleccion

TbTitulo.Text=System.Convert.ToString(DSEdu.Tables["Educacion"].Rows[0]["tituloobtenido"]);

TbTitulo.DataBind();

TbNitInstitucion.Text=System.Convert.ToString(DSEdu.Tables["Institucion"].Rows[0]["nitinstitucion"]);

TbNitInstitucion.DataBind();

TbInstitucion.Text=System.Convert.ToString(DSEdu.Tables["Institucion"].Rows[0]["nombreinstitucion"]);

TbInstitucion.DataBind();

string idpais=System.Convert.ToString(DSEdu.Tables["Pais"].Rows[0]["pais"]);

ListItem item1 =this.DdlPaisEd.Items.FindByText(idpais);

if(item1!=null)

   item1.Selected = true;

else

   return;//no se ha encontrado en la coleccion

DateTime FeEst=System.Convert.ToDateTime(DSEdu.Tables["Educacion"].Rows[0]["fechaculminacion"]);

String FechaEst=System.Convert.ToString(FeEst.ToShortDateString());

FechaEst=FeEst.ToString("yyyy/MM/dd");

TbFecha.Text=FechaEst;

TbFecha.DataBind();

string nivel=System.Convert.ToString(DSEdu.Tables["Nivel"].Rows[0]["nombrenivel"]);

ListItem item3 =this.DdlNivel.Items.FindByText(nivel);

if(item3!=null)

   item3.Selected = true;

else

   return;//no se ha encontrado en la coleccion
y me llena muy bien los controles ahora lo que necesito es que agregue un dropdown list donde le pido al usuario que seleccione actualizar o insertar... entonces voy a el evento de este dropdownlist y quiero que cuando escoja actualizar me muestre los controles con los datos que traigo de la base de datos y cuando me coloque insertar me muestre los controles vacios, yo lo hice con la condicion
Código:
if(DdlSeleccion.SelectedItem.Text=="Actualizar")
y pase el código que me lleva la información a los controles pero cuando ejecuto este no me hace nada y no se porque sabiendo que el autopostback del DdlSeleccion esta en true

Si me pueden ayudar se los agradezco
  #2 (permalink)  
Antiguo 29/11/2005, 13:32
 
Fecha de Ingreso: noviembre-2005
Mensajes: 129
Antigüedad: 18 años, 5 meses
Puntos: 0
Creo que es xq a la coleccion de parámetros del selectCommand del dataadapter q usas nunca le estas asignando el parámetro q creas parameter1
  #3 (permalink)  
Antiguo 29/11/2005, 13:38
Avatar de kejos  
Fecha de Ingreso: septiembre-2005
Mensajes: 100
Antigüedad: 18 años, 7 meses
Puntos: 0
Hola
si lo estoy asignando sino que ahi me falto es la siguiente linea
Código:
DaEdu.SelectCommand.Parameters.Add(parameter1);
  #4 (permalink)  
Antiguo 29/11/2005, 13:42
 
Fecha de Ingreso: noviembre-2005
Mensajes: 129
Antigüedad: 18 años, 5 meses
Puntos: 0
mmm, porque no pones el código que hay en el evento OnChange del DropDownList???
  #5 (permalink)  
Antiguo 29/11/2005, 13:47
Avatar de kejos  
Fecha de Ingreso: septiembre-2005
Mensajes: 100
Antigüedad: 18 años, 7 meses
Puntos: 0
es que alli lo coloque pero cuando ejecuto no me da o mejor dicho no me muestra los datos que necesito que me muestre sino que me muestra los controles vacíos
  #6 (permalink)  
Antiguo 29/11/2005, 18:45
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Pon el código completo (menos el generado por el vs.net), por lo poco que ví hay varias cosas que están de más.

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #7 (permalink)  
Antiguo 30/11/2005, 08:32
Avatar de kejos  
Fecha de Ingreso: septiembre-2005
Mensajes: 100
Antigüedad: 18 años, 7 meses
Puntos: 0
Hola!!!!!!
Este es el código que tengo dentro del evnto del dropdownlist
lo más chistoso es que hice una prueba haber si me llenaba un datagrid con los datos del resultado de la consulta y el datagrid lo llena completo pero cuando quiero llevar los datos a otros controles no me los muestra en los controles entonces la verdad ni se que pasa
A quien me pueda ayudar gracias
Código:
//Consulta educacion para actualizacion
TbNitInstitucion.ReadOnly=true;
SqlDataAdapter DaEdu;
DataSet DsEdu = new DataSet();
String cadenaConexion = "Data Source=PRACTICANTECSAI;" + "Initial Catalog=HojasDeVida; Integrated Security=true ";
SqlConnection MyCon;
MyCon = new SqlConnection(cadenaConexion);
DaEdu = new SqlDataAdapter("spEducacion", MyCon);
DaEdu.SelectCommand.CommandType = CommandType.StoredProcedure;
SqlParameter parameter1 = new SqlParameter("@docidentidad", SqlDbType.VarChar,30);
String doc2 = Session["MySessionVar"].ToString();
parameter1.Value= doc2; 
DaEdu.SelectCommand.Parameters.Add(parameter1);
SqlParameter parameter2 = new SqlParameter("@tituloobtenido", SqlDbType.NVarChar,50);
string Titu=System.Convert.ToString(DdlTituOb.SelectedItem.Value);
parameter2.Value= Titu;
DaEdu.SelectCommand.Parameters.Add(parameter2);
DaEdu.Fill(DsEdu,"TipoEducacion");
DaEdu.Fill(DsEdu,"Educacion");
DaEdu.Fill(DsEdu,"Institucion");
DaEdu.Fill(DsEdu,"Pais");
DaEdu.Fill(DsEdu,"Ciudad");
DaEdu.Fill(DsEdu,"Nivel");
//llevar datos a controles correspondientes
if(!this.IsPostBack)
{	
    string tipedu=System.Convert.ToString(DsEdu.Tables["TipoEducacion"].Rows[0]["tipoeducacion"]);
    ListItem item =this.DdlTipoEst.Items.FindByText(tipedu);
    if(item!=null)
        item.Selected = true;
    else
       return;//no se ha encontrado en la coleccion
   TbTitulo.Text=System.Convert.ToString(DsEdu.Tables["Educacion"].Rows[0]["tituloobtenido"]);
   TbTitulo.DataBind();
   TbNitInstitucion.Text=System.Convert.ToString(DsEdu.Tables["Institucion"].Rows[0]["nitinstitucion"]);
   TbNitInstitucion.DataBind();
   TbInstitucion.Text=System.Convert.ToString(DsEdu.Tables["Institucion"].Rows[0]["nombreinstitucion"]);
   TbInstitucion.DataBind();
   string idpais=System.Convert.ToString(DsEdu.Tables["Pais"].Rows[0]["pais"]);
   ListItem item1 =this.DdlPaisEd.Items.FindByText(idpais);
   if(item1!=null)
      item1.Selected = true;
   else
      return;//no se ha encontrado en la coleccion
   DateTime FeEst=System.Convert.ToDateTime(DsEdu.Tables["Educacion"].Rows[0]["fechaculminacion"]);
   String FechaEst=System.Convert.ToString(FeEst.ToShortDateString());
   FechaEst=FeEst.ToString("yyyy/MM/dd");
   TbFecha.Text=FechaEst;
   TbFecha.DataBind();
   string nivel=System.Convert.ToString(DsEdu.Tables["Nivel"].Rows[0]["nombrenivel"]);
   ListItem item3 =this.DdlNivel.Items.FindByText(nivel);
   if(item3!=null)
      item3.Selected = true;
   else
      return;//no se ha encontrado en la coleccion
}
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:39.