none
Usar la funcionalidad de un gridview RRS feed

  • Pregunta

  • Estimados, quisiera saber si se puede hacer lo siguiente.

    Tengo un gridview con el boton "seleccionar" que lo que hace es agregar la fila del producto a una especie de carro de compra.

    Ahora yo lo que quisiera es agregar en una hoja.aspx un boton con un producto que ya está en la base y darle la misma funcionalidad que la del boton grid select porsupuesto usando el mismo grid. Se podrá?

    Aquí el codigo que estoy usando.

    <asp:GridView ID="GridView1" runat="server" AllowPaging="True" CellPadding="4" 
                            onpageindexchanging="GridView1_PageIndexChanging" 
                            onselectedindexchanged="GridView1_SelectedIndexChanged" Width="100%" 
                            BackColor="White" BorderColor="#3366CC" BorderStyle="None" BorderWidth="1px">
                            <Columns>
                                <asp:CommandField ShowSelectButton="True" 
                                    SelectImageUrl="~/Images/boton_comprar.png" SelectText="" ButtonType="Image" >
    <ControlStyle Height="45px" Width="100px"></ControlStyle>
                                </asp:CommandField>
                            </Columns>
                            <FooterStyle BackColor="#99CCCC" ForeColor="#003399" />
                            <HeaderStyle BackColor="#003399" Font-Bold="True" ForeColor="#CCCCFF" />
                            <PagerStyle BackColor="#99CCCC" ForeColor="#003399" HorizontalAlign="Left" />
                            <RowStyle BackColor="White" ForeColor="#003399" />
                            <SelectedRowStyle BackColor="#009999" Font-Bold="True" ForeColor="#CCFF99" />
                            <SortedAscendingCellStyle BackColor="#EDF6F6" />
                            <SortedAscendingHeaderStyle BackColor="#0D4AC4" />
                            <SortedDescendingCellStyle BackColor="#D6DFDF" />
                            <SortedDescendingHeaderStyle BackColor="#002876" />
                        </asp:GridView>

    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            // Obtenemos el indice de la fila seleccionada
            int f = GridView1.SelectedIndex;
    
            //Al seleccionar una fila enviar los datos al siguiente formulario
            HttpCookie dato = new HttpCookie("dato");
    
            //Recuperamos datos
            dato.Values.Add("IdProducto", GridView1.Rows[f].Cells[1].Text);
            dato.Values.Add("Nombre", Server.HtmlDecode(GridView1.Rows[f].Cells[2].Text));
            dato.Values.Add("Autor", GridView1.Rows[f].Cells[3].Text);
            dato.Values.Add("Editorial", GridView1.Rows[f].Cells[4].Text);
            dato.Values.Add("Precio", GridView1.Rows[f].Cells[5].Text);
            dato.Values.Add("Estado", GridView1.Rows[f].Cells[6].Text);
            dato.Values.Add("Disponibles", GridView1.Rows[f].Cells[7].Text);
    
            //Enviar al cookie
            Response.Cookies.Add(dato);
    
            //Redireccionar
            Response.Redirect("Page02.aspx");
        }

    Espero poder ser claro, quisiera agregar productos en distintas paginas y darle la funcionalidad usando el mismo grid.

    Muchas gracias.

    Saludos.

    jueves, 4 de julio de 2013 18:26

Respuestas

  • Creo que lo que comentas se puede solucionar creando lo que se llamad un user control de asp.net. Creas como una pagina pero con extensión ascx y lo puedes agregar a cusntas paginas aspx quieras. Te paso un enlace que explica como crear dichos ascx, user control. crea un user control que incluya tu grid y botones ...

    http://msdn.microsoft.com/es-es/library/26db8ysc(v=vs.85).aspx


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    • Marcado como respuesta mar21_aet lunes, 29 de julio de 2013 20:24
    miércoles, 10 de julio de 2013 15:29