none
Listbox a Gridview RRS feed

  • Pregunta

  • Estoy empezando a programar se me dificulta un poco y no se como puedo pasar los datos de un listbox a un gridview.........Help me please!!!!

    • Editado Yareliiii martes, 26 de julio de 2016 13:28
    martes, 26 de julio de 2016 1:53

Respuestas

  • Yareliiii,

    Fíjate que colocas el requerimiento en la sección de ASP .Net sin embargo relatas acerca de controles de WinForms como DataGridView, confirma por favor el tipo de desarrollo que ocupas: WinForm o WebForm.

    Por otro lado, comentas que deseas cargar una fila de un objeto de tipo DataGridView que contiene 3 columnas, sin embargo del objeto ListBox sólo obtienes 1 valor, ¿de dónde obtienes los 2 valores restantes?

    martes, 26 de julio de 2016 2:41

Todas las respuestas

  • Hola Yareliiii,

    Cómo vas a pasar los valores? Todos a una misma columna?

    Necesitas hacer un ciclo for y obtener los datos del ListBox y dependiendo como vas a agregar al DGV, los añades.

    Tu DataGridView ya tiene cabeceras? Piensas agregarlas directamente con el DataGridView1.Rows.Add("valor. ..") o vas a usar el DataSource para cargarlos?

    Agradecería que te expliques con más detalle.

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    martes, 26 de julio de 2016 2:01
  • Hola :0 Joel

    En el listbox solo tengo el nombre de las personas y quiero pasar tres datos de las personas,  tengo  tres columnas en el datagridview. Quiero que se pase al dar doble click al nombre.

    No tengo idea de como hacer que funcione :(

    martes, 26 de julio de 2016 2:37
  • Yareliiii,

    Fíjate que colocas el requerimiento en la sección de ASP .Net sin embargo relatas acerca de controles de WinForms como DataGridView, confirma por favor el tipo de desarrollo que ocupas: WinForm o WebForm.

    Por otro lado, comentas que deseas cargar una fila de un objeto de tipo DataGridView que contiene 3 columnas, sin embargo del objeto ListBox sólo obtienes 1 valor, ¿de dónde obtienes los 2 valores restantes?

    martes, 26 de julio de 2016 2:41
  • Estoy usando WebForm en asp.net

    este es el codigo que tengo hasta ahorita:

                     DataTable table = new DataTable();
                     DataColumn column;
                     DataRow row;
                     column = new DataColumn();
                     column.DataType = System.Type.GetType("System.Int32");
                     column.ColumnName = "NumReloj";
                     table.Columns.Add(column);
    
                     column = new DataColumn();
                     column.DataType = System.Type.GetType("System.String");
                     column.ColumnName = "Nombre";
                     table.Columns.Add(column);
    
                     column = new DataColumn();
                     column.DataType = System.Type.GetType("System.String");
                     column.ColumnName = "Talla";
                     table.Columns.Add(column);
    
                     for (int i = 0; i < 10; i++)
                     {
                         row = table.NewRow();
                         row["NumReloj"] = i;
                         row["Nombre"] = "NumReloj" + i;
                         row["Talla"] = "NumReloj" + "Nombre" + i;
                         table.Rows.Add(row);
                     }
    
                     GridView1.DataSource = table;


    • Editado Yareliiii martes, 26 de julio de 2016 3:03
    martes, 26 de julio de 2016 2:46
  •    
            <table class="tabla-b">
                <tr>
                     <td class="td-e">
    
                        <asp:Button ID="Button1" runat="server" Text="Button" Width="80px" />
    
                    </td>
    
                    <td class="td-e">
    
                        <asp:Button ID="Button2" runat="server" Text="Button" Width="77px" />
    
                    </td>
                </tr>
                <tr>
                    <td class="td-e">
                        <asp:GridView ID="GridView1" runat="server" CssClass="GridView" ></asp:GridView>
                        
                        </td>
    
                    <td class="td-e">
                        <asp:ListBox ID="ListBox2" runat="server" AutoPostBack="True" Height="334px" Width="300px" SelectionMode="Multiple" ondblclick="ListBox2_DoubleClick()" cssclass="ListBox_Tag_Position"> 
    
                        </asp:ListBox>
                        
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                    </td>  
                </tr>
            </table>
            </div>
            </div>
        
    
    </asp:Content>
    <asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder2" runat="server">
    </asp:Content>

    martes, 26 de julio de 2016 2:49
  • Estuve buscando en la red, asi que tome la parte de codigo del constructor del datagridview y puse mis columnas, pero no se realmente si esto, adecuandolo correctamente, me funcione para hacer lo que quiero hacer ......
    martes, 26 de julio de 2016 2:52
  • Quieres decir que el datagridview no lo puedo utilizar para webForm, de un listbox no se puede cargar el datagridview con mas datos?

    No se realmente si se pueda hacer lo que  plantee, hay alguna mejor manera para resolverlo.

    • Editado Yareliiii martes, 26 de julio de 2016 3:01
    martes, 26 de julio de 2016 2:58
  • hola

    porque mencioans el DataGridView cuando preguntas en el foro de asp.net ? es una aplciacion web o desktop

    porque en asp.net seria un GridView, entonces edita el titulo de la pregunta

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    martes, 26 de julio de 2016 4:11
  • porque mencionas el datagridview si se trata de un desarrollo web ? la verdad que no queda claro el problema que planteas

    pero si un detalle cuando asignas el gridview debes tambien usar el metodo Databind()

    GridView1.DataSource = table;

    GridView1.DataBind();

    sino no veras registros representados

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 26 de julio de 2016 4:15
  • Si es una aplicacion web. Gracias
    martes, 26 de julio de 2016 13:28
  • >>Si es una aplicacion web

    ok pero entonces porque mencionas el DataGridView ?

    ademas esta poco claro el problema que planteas


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    martes, 26 de julio de 2016 15:35
  • Lo mencione por error... :(

    Ahora que ya me han dado sugerencias, lo que quiero hacer es pasar el nombre de uno por uno a la columna del gridview, al dar doble click sobre el nombre.

    Hasta ahorita tengo una parte del codigo que ya lo hace pero al momento de dar click en el nombre envia por default el primer nombre, aun cuando yo seleccione el ultimo. 

    protected void ListBox1_DoubleClick(object sender, EventArgs e)
            {
                try
                 {
                     DataTable table = new DataTable();
                     table.Columns.Add("Nombre", typeof(string));
                   
                    
                    for (int i = 0; i < 1; i++)
                     {
                         table.Rows.Add(ListBox1.Items[i].Text);
                     }
    
                     gridEmployee.DataSource = table;
                     gridEmployee.DataBind();
                 }
    
               catch (Exception)
                 {
                   Response.Write("<script language=javascript>alert('NO SE PUDIERON CARGAR LOS DATOS');</script>");
                 } 
             }


    martes, 26 de julio de 2016 19:39