Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Uso de CommandName en control ButtonField

188 views
Skip to first unread message

Alexa

unread,
May 12, 2009, 11:34:12 PM5/12/09
to
Investigando en Internet encontr� que CommandName: Obtiene o establece una
cadena que representa la acci�n que se ejecuta al hacer clic en un bot�n del
objeto ButtonField. Se reconocen los nombres de comando siguientes:
"Cancel" "Delete" "Edit" "Insert" "New" "Page" "Select" "Sort"
"Update"
Sin embargo veo que en muchos ejemplos prescinden de los nombres arriba
mencionados
<asp:ButtonField CommandName="Actualizar " Text="A" />
<asp:ButtonField CommandName="Seleccionar" Text="S" />

� que diferencia existe entre utilizar nombres de comando como por ejemplo
SELECT o en su lugar utilizar SELECCIONAR ?


Jose A. Fernandez

unread,
May 13, 2009, 7:42:34 AM5/13/09
to
Alexa

Los comandos predefinidos hacen que el control enlazado dispare
eventos "predefinidos".
from MSDN:
(...)Los botones de un control GridView también pueden invocar
algunas de las funciones integradas del control.(..)
...es decir el comando EDIT hace que el gridview por ejemplo cambie a
modo editar la fila.
el comando SELECT selecciona la fila (la marca) y dispara un evento
SelectIndexChange
TODOS los comandos disparan el evento Rowcommand (en el gridview) en
otro control no recuerdo el nombre pero algo similar...

Si agregas comandos "personalizados" el unico evento que dispara ser
"RowCommand" y alli tendras que verificar por tu parte cual es dicho
comando (en el parametro e llega el nombre e. CommandName) y luego con
el Argetumento puedes realizar tu accion.
Tipico es enviar en el argumento el ID de la fila, pero tambien
podrias recuperarla con la posicion de la fila y el DataKey.Porque
siempre se tiene la coleccion de DataKey que generalmente son los
camposClaves! (gralmente)
from MSDN
(...)La clase GridViewCommandEventArgs no contiene una propiedad que
indique en qué botón de la fila se hizo clic. Si necesita saber qué
fila provocó el evento, pase el índice de la fila al método de control
de eventos por medio de la propiedad CommandArgument.(...)


Te sirvió? o lo confundí mas? :)


Enlaces
---------------------
http://msdn.microsoft.com/es-es/library/system.web.ui.webcontrols.gridview.rowcommand(VS.80).aspx


Espero que te sirva de ayuda o guia
______________________
Jose A. Fernandez
blog: http://geeks.ms/blogs/fernandezja


On May 13, 12:34 am, " Alexa" <a...@hotmail.com> wrote:
> Investigando en Internet encontré que  CommandName:  Obtiene o establece una
> cadena que representa la acción que se ejecuta al hacer clic en un botón del

Alexa

unread,
May 13, 2009, 1:16:27 PM5/13/09
to
Esta parte me ha sido de gran ayuda "Si agregas comandos personalizados el
unico evento que dispara ser RowCommand" , sin embargo s�lo me falta
comprobarlo, pues tengo este GridView en el cual CommandName="Seleccionar"
:

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
DataKeyNames="CustomerID" DataSourceID="SqlDataS_Northw" >
<Columns>
<asp:ButtonField CommandName="Seleccionar" Text="BotnSeleccionar" />
<asp:BoundField DataField="CustomerID" HeaderText="CustomerID"
SortExpression="CustomerID" ReadOnly="True" />
</Columns>
</asp:GridView>


Sin embargo al ir a su codebehind vbnet , �porque puedo generar
automaticamente estos eventos "predefinidos" si el ComandName que puse fue
personalizado ? :
Protected Sub GridView2_RowDeleted(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.GridViewDeletedEventArgs) Handles
GridView2.RowDeleted
End Sub
Protected Sub GridView2_RowEditing(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.GridViewEditEventArgs) Handles
GridView2.RowEditing
End Sub
Protected Sub GridView2_RowUpdated(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.GridViewUpdatedEventArgs) Handles
GridView2.RowUpdated
End Sub

�SON ESTOS LOS EVENTOS PREDEFINIDOS A QUE TE REFIERES CUANDO USAMOS NOMBRES
DE COMANDO PREDEFINIDOS ?
�COMO COMPRUEBO QUE ESTOY DISPARANDO ESOS EVENTOS PREDEFINIDOS CUANDO USO
NOMBRES COMANDOS PREDEFINIDOS?
Espero haber dejado comprender mi duda.

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

"Jose A. Fernandez" <ferna...@gmail.com> escribi� en el mensaje
news:639f9893-93d9-4e7d...@s28g2000vbp.googlegroups.com...
Alexa

Los comandos predefinidos hacen que el control enlazado dispare
eventos "predefinidos".
from MSDN:

(...)Los botones de un control GridView tambi�n pueden invocar


algunas de las funciones integradas del control.(..)
...es decir el comando EDIT hace que el gridview por ejemplo cambie a
modo editar la fila.
el comando SELECT selecciona la fila (la marca) y dispara un evento
SelectIndexChange
TODOS los comandos disparan el evento Rowcommand (en el gridview) en
otro control no recuerdo el nombre pero algo similar...

Si agregas comandos "personalizados" el unico evento que dispara ser
"RowCommand" y alli tendras que verificar por tu parte cual es dicho
comando (en el parametro e llega el nombre e. CommandName) y luego con
el Argetumento puedes realizar tu accion.
Tipico es enviar en el argumento el ID de la fila, pero tambien
podrias recuperarla con la posicion de la fila y el DataKey.Porque
siempre se tiene la coleccion de DataKey que generalmente son los
camposClaves! (gralmente)
from MSDN
(...)La clase GridViewCommandEventArgs no contiene una propiedad que

indique en qu� bot�n de la fila se hizo clic. Si necesita saber qu�
fila provoc� el evento, pase el �ndice de la fila al m�todo de control


de eventos por medio de la propiedad CommandArgument.(...)


Te sirvi�? o lo confund� mas? :)


Enlaces
---------------------
http://msdn.microsoft.com/es-es/library/system.web.ui.webcontrols.gridview.rowcommand(VS.80).aspx


Espero que te sirva de ayuda o guia
______________________
Jose A. Fernandez
blog: http://geeks.ms/blogs/fernandezja


On May 13, 12:34 am, " Alexa" <a...@hotmail.com> wrote:

> Investigando en Internet encontr� que CommandName: Obtiene o establece una
> cadena que representa la acci�n que se ejecuta al hacer clic en un bot�n

0 new messages