net ejemplos asp c# asp.net linkbutton

c# - ejemplos - LinkButton envía valor al código detrás de OnClick



linkbutton asp net onclick (3)

Tengo un control de LinkButton ASP y me preguntaba cómo enviar un valor al código que se encuentra detrás cuando se hace clic en él. ¿Es eso posible con este evento?

<asp:LinkButton ID="ENameLinkBtn" runat="server" style="font-weight: 700; font-size: 8pt;" onclick="ENameLinkBtn_Click" ><%# Eval("EName") %></asp:LinkButton>


Agregue un atributo CommandName y, opcionalmente, un atributo CommandArgument a su control LinkButton. A continuación, configure el atributo OnCommand con el nombre de su controlador de eventos Command.

<asp:LinkButton ID="ENameLinkBtn" runat="server" CommandName="MyValueGoesHere" CommandArgument="OtherValueHere" style="font-weight: 700; font-size: 8pt;" OnCommand="ENameLinkBtn_Command" ><%# Eval("EName") %></asp:LinkButton> <asp:Label id="Label1" runat="server"/>

Entonces estará disponible cuando esté en su controlador:

protected void ENameLinkBtn_Command (object sender, CommandEventArgs e) { Label1.Text = "You chose: " + e.CommandName + " Item " + e.CommandArgument; }

Más información en MSDN


Pruebe y recupere la propiedad de texto del botón de enlace en el código detrás:

protected void ENameLinkBtn_Click (object sender, EventArgs e) { string val = ((LinkButton)sender).Text }


Simplemente agregue al parámetro CommandArgument y CommandArgument en el controlador Click :

<asp:LinkButton ID="ENameLinkBtn" runat="server" style="font-weight: 700; font-size: 8pt;" CommandArgument="YourValueHere" OnClick="ENameLinkBtn_Click" >

Luego, en su evento de clic:

protected void ENameLinkBtn_Click(object sender, EventArgs e) { LinkButton btn = (LinkButton)(sender); string yourValue = btn.CommandArgument; // do what you need here }

También puede establecer el argumento CommandArgument cuando se vincula si está utilizando LinkButton en cualquier control LinkButton haciendo:

CommandArgument=''<%# Eval("SomeFieldYouNeedArguementFrom") %>''