Ver Mensaje Individual
  #3 (permalink)  
Antiguo 10/04/2007, 15:08
Avatar de zacktagnan
zacktagnan
 
Fecha de Ingreso: abril-2005
Mensajes: 501
Antigüedad: 19 años, 1 mes
Puntos: 3
Re: Parámetros en el Clic del LinkButton

Cita:
Espero haberme dado a entender.
Pues con mi pequeña experiencia en este lenguaje, entiendo así, así ...

Te agradecería me lo ampliaras algo más, si es posible y no mucho abusar, con algún ejemplo de código.

1ª Forma
---------
Cita:
Una forma normal en vez de mandar parámetros es guardar la info en etiquetas y hacer un findcontrol de los valores que necesitas
Esta forma no la entiendo mucho. Cuando dices la info, ¿a qué te refieres...?

Como he comentado, la idea es poner el LinkButton dentro del Datagrid, dentro de un TemplateColumn, dentro de un ItemColumn, algo como esto (a no ser que esté mal planteado):

Código:
<asp:TemplateColumn HeaderText="Estado">
	<ItemTemplate>
		<asp:LinkButton id="LinkButton1" style="Z-INDEX: 102; LEFT: 350px; POSITION: absolute; TOP: 13px" runat="server"><%# estadoPeli(Convert.ToString(DataBinder.Eval(Container.DataItem, "peli_activo")))%></asp:LinkButton>
	</ItemTemplate>
</asp:TemplateColumn>
NOTA: Con "estadoPeli(Convert.ToString(DataBinder.Eval(Conta iner.DataItem, "peli_activo")))", se pasa el valor del campo "peli_activo". Y si es true se escribe Activo y si es false se escribe Desactivo.

La cosa es que al clicar ó pulsar en el LinkButton, se llame al método llamado
cambio_Estado(...)

Código:
protected void cambio_Estado(string estado, string el_codigo)
{
...
}
Su función es la de cambiar el valor del campo antes mencionado peli_activo (Si es true pasarlo a false y viceversa); para ello, es necesario el valor actual y el código de elemento afectado.

Entonces, después de toda esta explicación, cuando dices de "guardar la info en etiquetas", ¿quieres decir, por ejemplo, que al clicar en el LinkButton de una determinada fila se guarden los valores de peli_activo (para el parámetro de estado) y de peli_id (para el parámetro de código) en dos label no visibles ó input hiddens y al mismo tiempo el LinkButton llame al método cambio_Estado(...) (¿¿estando dentro de su propiedad CommandName ó OnCommand ó desde el Evento Clic??) y que sea el método el que recoja los valores recogidos en los labels ó input hiddens...?


2ª Forma
---------
Código:
otra forma sería pasarle en el CommandArgument el DataItem y recibirlo en tu función para accesar a toda la fila.
Será una tontería, ó una gran ignorancia por mi parte, pero ¿a qué te refieres diciendo el "DataItem"?, ¿te refieres a esto:?
<%# DataBinder.Eval(Container.DataItem, "peli_id")%>
ó
<%# DataBinder.Eval(Container.DataItem, "peli_activo")%>

¿Quieres decir poner los parámetros dentro de la propiedad "CommandArgument" del LinkButton?

¿Se puede poner más de un argumento en esta propiedad, igual separados por comas ó punto y coma?

¿Sería algo así? (igual es una burrada lo que sigue)

CommandArgument="<%# DataBinder.Eval(Container.DataItem, "peli_id")%>;<%# DataBinder.Eval(Container.DataItem, "peli_activo")%>"

La llamada al método ¿¿sería en el CommandName ó OnCommand ó desde el Evento Clic??

Y lo de
Código:
y recibirlo en tu función para accesar a toda la fila.
Tampoco lo entiendo del todo...
__________________
Saludos,

zacktagnan.
=================================================