none
Problema al cagar datagriview en c# RRS feed

  • Pregunta

  • Hola mi problema esque al selecionar un dropdownlist escoge un valor y en el datagrid debe cargar datos asociados a la seleccion el problema es que me los repite 4 veces.. alguien puede decirme por que sucede esto..

    como puedo solucionarlo

    trabajo en visual estudio en una aplicacion .net

    lenguaje c#

     public void Cargar_DataGrid()
     {
    
      Conectar();
      SqlDataAdapter adaptadorcb = new SqlDataAdapter
    ("Select tb_items.Item, tb_items.Descripcion, tb_items.Ref_Proyecto, tb_items.Cantidad,
     tb_items.ValorUnit,
    tb_items.IdOp,
    tb_items.Vendido From tb_items,
    tb_Proyectos where tb_items.Ref_Proyecto = '"
    + txtReferencia.Text + "'", laConexion); adaptadorcb.Fill(tabla1); gvItems.DataSource = tabla1; gvItems.DataBind(); } protected void ddlRef_SelectedIndexChanged(object sender, EventArgs e) { Conectar(); txtReferencia.Text = BuscarTexto("select Referencia from tb_proyectos where Id =
    "
    + ddlRef.SelectedValue + ""); ddlRef.Visible = false; Cargar_DataGrid(); }

    el dropdownlist tiene autopostback

     


    lunes, 18 de julio de 2011 20:52

Respuestas

  • un datagridview ? no sera un gridview, digo es una aplciaicon asp.net, no ?

    podria ser algo como esto

     public void Cargar_DataGrid()
     {

        Conectar();
        string query = @"Select Item, Descripcion, Ref_Proyecto, Cantidad,
                        ValorUnit,
                        IdOp,
                        Vendido From tb_items 
                        where Ref_Proyecto = @proyecto";

        SqlCommand cmd = new SqlCommand(query, laConexion);
        cmd.Parameters.AddWithValue("@proyecto", txtReferencia.Text)
        SqlDataAdapter adaptadorcb = new SqlDataAdapter(cmd);

        adaptadorcb.Fill(tabla1);

        gvItems.DataSource = tabla1;
        gvItems.DataBind();


     }

     

    como veras has puesto la tabla tb_Proyectos en la query y esta genera los duplicados

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    lunes, 18 de julio de 2011 21:17

Todas las respuestas

  • Hola , tu codigo esta un poco enredado , quzias te sirva saber que el gridview tiene una propiedad

    AutoGenerateColumns

    ponla en false

    y a ver que pasa.


    Lima-Perú
    lunes, 18 de julio de 2011 21:16
  • un datagridview ? no sera un gridview, digo es una aplciaicon asp.net, no ?

    podria ser algo como esto

     public void Cargar_DataGrid()
     {

        Conectar();
        string query = @"Select Item, Descripcion, Ref_Proyecto, Cantidad,
                        ValorUnit,
                        IdOp,
                        Vendido From tb_items 
                        where Ref_Proyecto = @proyecto";

        SqlCommand cmd = new SqlCommand(query, laConexion);
        cmd.Parameters.AddWithValue("@proyecto", txtReferencia.Text)
        SqlDataAdapter adaptadorcb = new SqlDataAdapter(cmd);

        adaptadorcb.Fill(tabla1);

        gvItems.DataSource = tabla1;
        gvItems.DataBind();


     }

     

    como veras has puesto la tabla tb_Proyectos en la query y esta genera los duplicados

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    lunes, 18 de julio de 2011 21:17
  • Nada mas una pregunta en tu consulta para que pones la tabla tb_Proyectos

    alli puede esta el problema proeba la pura consulta en el server magement de sql

    y si te manda lo mismo que en tu grid el problema va por alli y tambien prueba

    quitandolo y si te devuelve solo un renglon es que ese era el problema.


    lunes, 18 de julio de 2011 21:23
  • si muchas gracias en verdad q ese era el problema no se deverdad por que puse esa tabla jaja gracias!
    martes, 19 de julio de 2011 16:07
  • recuerda marcar la respuesta correcta =) para futuras referencias!!
    martes, 19 de julio de 2011 16:28