Dudas Con DataGrid y Button Column

23/06/2004 - 17:54 por Luis Cisneros | Informe spam
Hola a Todos:

Tengo un aspx que contienen un datagrid que tiene como
origen un DataTable:
dg.DataSource = dtEvents
dg.DataBind()
y como campos.
ID, Nombre, Fecha.

Quirero agregar un boton a cada fila que me permita
ejecutar una rutina que necesita como parametro el campo
ID de ese registro.

¿Como hago esto?
trate de hacerlo con e.Item.Cells(0).Text en el evento
ItemCommand pero me trae el campo vacio.

Gracias...
Saludos Luis Cisneros

Preguntas similare

Leer las respuestas

#1 Oscar
23/06/2004 - 18:33 | Informe spam
en el evento
Private Sub dgfil1_SelectedIndexChanged(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
dgfil1.SelectedIndexChanged

dgfil1.SelectedItem.Cells(1).Text

end sub
Hola a Todos:

Tengo un aspx que contienen un datagrid que tiene como
origen un DataTable:
dg.DataSource = dtEvents
dg.DataBind()
y como campos.
ID, Nombre, Fecha.

Quirero agregar un boton a cada fila que me permita
ejecutar una rutina que necesita como parametro el campo
ID de ese registro.

¿Como hago esto?
trate de hacerlo con e.Item.Cells(0).Text en el evento
ItemCommand pero me trae el campo vacio.

Gracias...
Saludos Luis Cisneros
.

Respuesta Responder a este mensaje
#2 Franco Figún
23/06/2004 - 18:36 | Informe spam
Alomejor este ejemplo te sirve: no usa un boton, simplemente le pasas un
parametro (ID) en un textbox, y te muestra un listado con todos los datos en
un datagrid...
Es facil ponerle el boton, pero talvez te sirve asi:

<%@ Page Language="VB" debug="true"%>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<script runat="server">
Dim Conn As New OleDbConnection("Provider=" & _
"Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\Inetpub\wwwroot\tubase.mdb")

Sub ObtenerDatos(obj As Object, e As EventArgs)
Dim objCmd As OleDbCommand = New OleDbCommand _
("SELECT * FROM newagenda WHERE id = @ID", Conn)
Dim objLector As OleDbDataReader
Dim objParam As OleDbParameter

objParam = objCmd.Parameters.Add("@ID", _
OleDbType.Integer)
objParam.Direction = ParameterDirection.Input
objParam.Value = tbID.Text

Try
objCmd.Connection.Open()
objLector = objCmd.ExecuteReader
Catch ex As OleDbException
Label1.Text = "Error al obtener datos de la base de datos."
End Try

DataGrid1.DataSource = objLector
DataGrid1.DataBind()

objLector.Close
objCmd.Connection.Close()
End Sub
</script>

<html><body>
<form runat="server">
<asp:Label id="Label1" runat="server" /><br>
Teclee un identificador: <asp:TextBox id="tbID" runat="server"
AutoPostBack=True
OnTextChanged=ObtenerDatos /><p>
<asp:DataGrid id="DataGrid1" runat="server"
BorderColor="black" GridLines="Vertical"
cellpadding="4" cellspacing="0" width="100%"
Font-Name="Arial" Font-Size="8pt"
HeaderStyle-BackColor="#cccc99"
ItemStyle-BackColor="#ffffff"
AlternatingItemStyle-Backcolor="#cccccc"
AutoGenerateColumns="true" />
</form>
</body></html>

FF
www.francofigun.com.ar
www.microsofties.com.ar
MSN:
UIN: 314408886
Yahoo MSN:
"Luis Cisneros" wrote in message
news:2040801c4593a$665f66c0$
Hola a Todos:

Tengo un aspx que contienen un datagrid que tiene como
origen un DataTable:
dg.DataSource = dtEvents
dg.DataBind()
y como campos.
ID, Nombre, Fecha.

Quirero agregar un boton a cada fila que me permita
ejecutar una rutina que necesita como parametro el campo
ID de ese registro.

¿Como hago esto?
trate de hacerlo con e.Item.Cells(0).Text en el evento
ItemCommand pero me trae el campo vacio.

Gracias...
Saludos Luis Cisneros
Respuesta Responder a este mensaje
#3 Sashka
23/06/2004 - 18:45 | Informe spam
Lo que probablemente te está pasando, es que la propiedad
autoGenerateColumns del datagrid es true entonces cuando es así y además
incluyes un ButtonColumn, éste se situa como column 0... estás solicitando
el Text del ButtonColumn (y probablemente es una imagen y no lo tiene)...
prueba con e.Item.Cells(1).Text

Sashka
MS MVP Access

"Luis Cisneros" escribió en el
mensaje news:2040801c4593a$665f66c0$
Hola a Todos:

Tengo un aspx que contienen un datagrid que tiene como
origen un DataTable:
dg.DataSource = dtEvents
dg.DataBind()
y como campos.
ID, Nombre, Fecha.

Quirero agregar un boton a cada fila que me permita
ejecutar una rutina que necesita como parametro el campo
ID de ese registro.

¿Como hago esto?
trate de hacerlo con e.Item.Cells(0).Text en el evento
ItemCommand pero me trae el campo vacio.

Gracias...
Saludos Luis Cisneros
Respuesta Responder a este mensaje
#4 Luis Cisneros
23/06/2004 - 21:46 | Informe spam
Gracias!, el peromela no era autoGenerateColumns si no
que tenia la columna ID como un hipervinculo. lo cambia a
un texto y funciono perfectamente.

Muchas gracias a todos por su ayuda!
Lo que probablemente te está pasando, es que la propiedad
autoGenerateColumns del datagrid es true entonces


cuando es así y además
incluyes un ButtonColumn, éste se situa como column 0...


estás solicitando
el Text del ButtonColumn (y probablemente es una imagen


y no lo tiene)...
prueba con e.Item.Cells(1).Text

Sashka
MS MVP Access

"Luis Cisneros"


escribió en el
mensaje news:2040801c4593a$665f66c0$
Hola a Todos:

Tengo un aspx que contienen un datagrid que tiene como
origen un DataTable:
dg.DataSource = dtEvents
dg.DataBind()
y como campos.
ID, Nombre, Fecha.

Quirero agregar un boton a cada fila que me permita
ejecutar una rutina que necesita como parametro el campo
ID de ese registro.

¿Como hago esto?
trate de hacerlo con e.Item.Cells(0).Text en el evento
ItemCommand pero me trae el campo vacio.

Gracias...
Saludos Luis Cisneros


.

Respuesta Responder a este mensaje
#5 Henrry Vargas
24/06/2004 - 01:09 | Informe spam
Hola luis lo que tienes que hacer es agregar otra
columna enlazada al id pero la pones invisible, y luego
programa el evento SelectedIndexChanged del data grid y
vas hacer regerencia ael datagrid1.SelectedItem.Cells(1)
y listo.

Hola a Todos:

Tengo un aspx que contienen un datagrid que tiene como
origen un DataTable:
dg.DataSource = dtEvents
dg.DataBind()
y como campos.
ID, Nombre, Fecha.

Quirero agregar un boton a cada fila que me permita
ejecutar una rutina que necesita como parametro el campo
ID de ese registro.

¿Como hago esto?
trate de hacerlo con e.Item.Cells(0).Text en el evento
ItemCommand pero me trae el campo vacio.

Gracias...
Saludos Luis Cisneros
.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida