Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/07/2013, 14:35
CarloMagno1986
 
Fecha de Ingreso: julio-2013
Ubicación: Bogotá
Mensajes: 2
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Pasar registro de fila de gridview a textbox

Paso uno:

Si el botón no es Template, pasalo. y en el código del botón pon esto:

Código:
<asp:TemplateField HeaderText="Acción">
<ItemTemplate>
<asp:Button ID="btnEditar" runat="server" Text="Editar" CommandArgument='<%# Eval("Nombre DataField de la columna 1") + "," + Eval("Nombre DataField de la columna 2") + "," + Eval("Nombre DataField de la columna 3") + "," + Eval("Nombre DataField de la columna 4")+ "," + Eval("Nombre DataField de la columna n")%>' runat="server" OnCommand="EditarFilaSeleccionada" />
</ItemTemplate>
</asp:TemplateField>
Paso dos:

En el code behind de tu pagina crea un método con el mismo nombre del OnCommand de tu botón, así:

Código:
protected void EditarFilaSeleccionada( object sender, CommandEventArgs e )
		{
			var datosFila = e.CommandArgument.ToString().Split( ',' );
		
			//La pocisión va de acuerdo a como construiste el Command Argument en nuestro caso es:
			
			string campoColumnaUno = datosFila[ 0 ].ToString();
			string campoColumnaDos = datosFila[ 1 ].ToString();
			string campoColumnaTres = datosFila[ 2 ].ToString();
			string campoColumnaCuatro = datosFila[ 3 ].ToString();
			string campoColumnaN = datosFila[ 4 ].ToString();
			
			//Asignas cada variable con tu control de texto respectivamente

			txtcampoColumnaUno.Text = campoColumnaUno;
			txtcampoColumnaDos.Text = campoColumnaDos;
			txtcampoColumnaTres.Text = campoColumnaTres;
			txtcampoColumnaCuatro.Text = campoColumnaCuatro;
			txtcampoColumnaN.Text = campoColumnaN;

			// y Listo!!! la información de la fila seleccionada ya está en tus controles
		}