ASP.NET - Obtener Fila DataGrid

 
Vista:

Obtener Fila DataGrid

Publicado por Henry (27 intervenciones) el 17/11/2004 15:18:34
Quiero saber como puedo hacer para obtener el indice de una fila, especificamente la fila que esta siendo actualmente editada.
Me explico, cuando un usuario agregar una nueva fila al datagrid, o cuando coloca una ya existente en modo de edicion, como puedo saber cual es la fila sobre la cual esta parado actualmente de forma que pueda leer los valores de los Text Box y enviarlos a la base de datos.
Esto es porque no estoy utilizando las columnas del Datagrid para insertar y actualizar y eliminar sino que estos son metodos que tengo en botones de comando por eso necesito saber como puedo obtener la fila que esta siendo actualmente editada. Saludos.
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
sin imagen de perfil
Val: 56
Bronce
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

RE:Obtener Fila DataGrid

Publicado por Yamil Bracho (1136 intervenciones) el 17/11/2004 15:27:01
Cuando se dispara el evento ItemCommand del datagrid y le asocias el correspondiente codigo a este se le pasa como parametro una variable del tipo System.Web.UI.WebControls.DataGridCommandEventArgs.
Con este parametro puede obtener la informacion de que valor hay en cada columna de la fila donde se disparo el evento. Para saber el valor del campo en la primera columna haces e.Item.Cells(0).Text y asi sucesivamente
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:Obtener Fila DataGrid

Publicado por Henry (27 intervenciones) el 17/11/2004 15:55:17
Disculpa, y el e.Item.Cells(0).Text sirve solo para el Text Box?. Es decir, como le hago cuando tengo por ejemplo un combo box? Seria
e.Item.Cells(0).SelectedValue?
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
sin imagen de perfil
Val: 56
Bronce
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

RE:Obtener Fila DataGrid

Publicado por Yamil Bracho (1136 intervenciones) el 17/11/2004 16:26:27
Puedes hacer algo como :

Dim cboStateTemp As DropDownList = CType(e.Item.FindControl("cboState"), DropDownList)
Dim strTemp as String = cboStateTemp.SelectedItem.Value
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:Obtener Fila DataGrid

Publicado por Henry (27 intervenciones) el 17/11/2004 18:58:08
Disculpe, como sabe quiero insertar los valores de la fila actual del grid desde un boton de comando. Para tener acceso a el parametro e de tipo System.Web.UI.WebControls.DataGridCommandEventArgs como puedo hacer. Usted ha dicho que cuando se dispara el ItemCommand pero como puedo hacer para tener acceso a la fila desde un boton de comando?
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
sin imagen de perfil
Val: 56
Bronce
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

RE:Obtener Fila DataGrid

Publicado por Yamil Bracho (1136 intervenciones) el 17/11/2004 19:53:21
Coloca cuando definas el DataGrid OnItemCommand="Button_Click"
y Button_Click es la rutina que te sirve el evento ItemCommand. A ese procedimiento le llega como parametro el Sender de tipo Object y el e que te menciona como DataGirdCommandEventsArgs
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:Obtener Fila DataGrid

Publicado por Henry (27 intervenciones) el 17/11/2004 20:30:16
ok, entiendo que el OnItemCommand="Button_Click" lo coloco en la parte de HTML cuando defino el Datagrid,
y entiendo que Button_Click es una rutina que voy a escribir tambien dentro del html, no se si me equivoco.

Lo que pasa es que necesito que el registro sea guardado cuando se hace click en el boton de comando.
Y la rutina de guardar la tengo en mi archivo o clase .vb.

He intentado hacerlo como udted dice pero por supuesto que me da un error.
ESto es lo que hice cuando defini el grid:

<asp:datagrid id=DataGrid1 runat="server" OnItemCommand="Button1_Click">

Y en mi boton de comando hago esto:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As DataGridCommandEventArgs) Handles Button1.Click
'rutinas
End Sub

pero me da error por el parametro e que debe ser de tipo System.EventArgs.

Tambien entiendo que el OnItemCommand se ejecuta cuando hago click en un boton
dentro del datagrid, y en realidad yo no tengo botones dentro del datagrid, sino que
tengo mis rutinas para agregar una fila y para colocarla en modo de edicion.

Lo que necesito es saber en que fila estoy parado para poder acceder a los valores
desde el evento click de un boton de comando.
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
sin imagen de perfil
Val: 56
Bronce
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

RE:Obtener Fila DataGrid

Publicado por Yamil Bracho (1136 intervenciones) el 17/11/2004 21:31:09
LO que pasa es que le estas colocando que maneja el Click del Boton y no debe procesar el ItemCommand
No lo coloques como un manejador de evento, es decir quitale el Handles
Para clarificar mejor la idea chequea la pagina www.dotnetjohn.com y busca el articulo de "Using a ButtonColumn Control in a Datagrid"
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:Obtener Fila DataGrid

Publicado por Henry (27 intervenciones) el 17/11/2004 21:48:52
Disculpa, lo que pasa es que creo que no me hecho entender.
Ya revise el articulo y el ejemplo que me mandaste.

Lo que pasa es que cuando me refiero a que estoy utilizando un command button
para insertar y actualizar quise decir que es un solo boton que esta fuera del datagrid.
En este ejemplo muestran como colocar un ButtonColumn o bton en el datagrid.

Yo tengo un solo boton el cual esta fuera del datagrid, no es un ButtonColumn.
Por eso es que no se como saber que fila esta actualmente seleccionada para poder
tomar los valores de sus controles, ya que es un control independiente del datagrid.
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:Obtener Fila DataGrid

Publicado por EnriqueK (2 intervenciones) el 17/11/2004 22:04:18
Ya si no entiendes mejor compra un libro y ponte a leer, q mas ayuda puedes pedir???
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:Obtener Fila DataGrid

Publicado por Henry (27 intervenciones) el 17/11/2004 22:09:28
No me compro un libro porque ya lo tengo, se llama ASP.Net, es de Mattew Macdonald, lo que pasa es que en el no esta lo que quiero, asi como tampoco lo he encontrado en ningun sitio de Internet.
Si pregunto es porque de verdad no se como hacerlo, no porque quiera que los demas hagan el trabajo por mi.
En realidad lo que estoy preguntando no lo he visto hecho aun, ahora bien si tu sabes tanto porque mas bien no me ayudas en vez de ponerte a criticar, para eso son los foros no? sino diganmelo y no vuelvo a molestar por aca. Gracias.
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:Obtener Fila DataGrid

Publicado por Juan Carlos (1 intervención) el 17/11/2004 22:54:31
Si los foros son para ayudar, no para criticar, aqui los que se las den de que saben mucho que se vayan para otro lado.
Recuerden que el conocimiento es libre y le pertenece a la humaidad...
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
sin imagen de perfil
Val: 56
Bronce
Ha mantenido su posición en ASP.NET (en relación al último mes)
Gráfica de ASP.NET

RE:Obtener Fila DataGrid

Publicado por Yamil Bracho (1136 intervenciones) el 18/11/2004 16:13:35
Ok... SI es asi debes tener alguna manera de identificar la fila donde estas ya que asi como lo tienes no hay manera. Lo mas facil es que coloques un boton por cada fila.
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:Obtener Fila DataGrid

Publicado por Henry (27 intervenciones) el 18/11/2004 23:31:48
Si, eso es lo que voy a hacer, gracias Yamil por tu ayuda
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