ASP.NET - Incluir Botones en un gridView

 
Vista:

Incluir Botones en un gridView

Publicado por Zephir (18 intervenciones) el 15/03/2007 11:30:00
Hola Amigos, tengo un problema serio, estoy 100% atascado en el desarrollo de una api. espero que podais ayudarme.

Estoy desarrollando una apli en asp.net 2.0. Estoy haciendo una estructura en 3 capas. Presentacion, Dominio y Persistencia.

IMPORTANTE; TODO DESDE CODIGO.

En una fase de la aplicacion existe un comando buscar. este carga un gridview.

Los datos del GridView cargan correctamente, con las propiedades DataSource y el Metodo dataBind();

Hasta aquí todo correcto.

El problema lo tengo al querer introducir un boton "DESCARGA" en cada una de las filas del GridView.

Consigo introducir un boton(no importa el tipo), y consigo que ejecute un procedimiento. El problema es,
¿¿como puedo enviarle un parametro al procedimiento?? o
¿¿De todos los botones de Descarga, como se cual ha iniciado el evento??

Creo que si supiera como crear una columna plantilla en tiempo de ejecucion(desde codigo), el problema se solventaria, porque podria utilizar la propiedad Commad y commadArguments de un control que crearia en tiempo de ejecucion.

Espero haberme explicado correctamente, ya estoy con las ideas bajo zero.

un saludo
Zephir
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Incluir Botones en un gridView

Publicado por Mononoke (14 intervenciones) el 29/03/2007 21:14:08
Todo es muy senccillo mi querido saltamontes jajaajajaj siekpre quice decir eso :-P

Bueno la cosa es asi tu html del grid se debe ver mas o menos asi de tal forma que anexes un asp:ButtonField el cual va a resoponder a un CommandName de tal forma que puedas tener muchos botones con distintas funcionalidade a un mismo grid:

<asp:GridView ID="grdSolicitudes" Width="100%" runat="server" AutoGenerateColumns="False" >
<Columns>
<asp:BoundField DataField="Nombre" HeaderText="Nombre" >
<ItemStyle HorizontalAlign="Left" />
<asp:ButtonField ButtonType="Button" CommandName="Ver" Text="Ver" />
</Columns>
</asp:GridView>

y en tu codigo debes tener algo asi, si lo lees podras notar como e.CommandName sirve para identificar los n controles que tengas y con iIndex = Convert.ToInt32(e.CommandArgument) obtienes el num de la columna por si no entiendes dt = Session.Item("dtBusq") es una variable de session que contiene el contenido del grid:

Protected Sub grdSolicitudes_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles grdSolicitudes.RowCommand
Dim cHerr As ClaseCRM.Herramientas = New ClaseCRM.Herramientas()
Dim dt As DataTable = New DataTable()
Dim iIndex As Integer

Try
Select Case e.CommandName
Case "Ver"
iIndex = Convert.ToInt32(e.CommandArgument)
dt = Session.Item("dtBusq")
Session.Item("idCliente") = dt.Rows(iIndex).Item("iClienteID").ToString().Trim()
Session.Remove("dtBusq")
Response.Redirect("Cliente_Llamadas.aspx?idC=" + Session.Item("idCliente").ToString())
End Select
Catch ex As Exception
Response.Write(cHerr.JavaScript_Alert("Los datos del cliente no se pueden obtener. Contacte a sistemas: " & ex.Message()))
End Try
End Sub

Espero y pueda servirte.

Mononoke.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Incluir Botones en un gridView

Publicado por javk (1 intervención) el 03/04/2011 23:52:13
Mil gracias EXCELENTE
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Incluir Botones en un gridView

Publicado por Oscar Fiblas Aramayo (1 intervención) el 28/08/2017 23:57:26
Lamentablemente no funciona con un Button agregado a un TemplateField. El e.commandname a mi no me muestra nada cuando agrego este tipo de botón.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar