
21/12/2004, 06:55
|
 | | | Fecha de Ingreso: septiembre-2004 Ubicación: Venezuela
Mensajes: 300
Antigüedad: 20 años, 6 meses Puntos: 2 | |
Evento Click en Control Compuesto: Hola, alguien sabe como crear un evento click para un control compuesto?
yo lo he hecho creando un control de dos botones de comando y un evento click
para el control pero no me funcona porque el evento click se ejecuta dos veces.
Este es el código:
Imports System
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.ComponentModel
Imports System.Drawing
Public Class Botones
Inherits WebControl
Implements IPostBackEventHandler
Dim Boton1 As New Button
Dim Boton2 As New Button
'creo los controles
Protected Overrides Sub CreateChildControls()
''''''''''''''''''''''''''''''''''''''''''''''
'de esta forma obtengo el Id del botón en el
'que se hizo click.
''''''''''''''''''''''''''''''''''''''''''''''
Boton1.Id = "Boton1"
Boton1.Attributes("OnClick") = _
Page.GetPostBackEventReference(Me, Boton1.ID)
me.Controls.Add(Boton1)
Boton2.Id = "Boton1"
Boton2.Attributes("OnClick") = _
Page.GetPostBackEventReference(Me, Boton1.ID)
me.Controls.Add(Boton2)
End Sub
'Este método se ejecuta cuando el usuario hace click en alguno de los botones
Public Overridable Overloads Sub RaisePostBackEvent(ByVal eventArgument As String) Implements System.Web.UI.IPostBackEventHandler.RaisePostBackE vent
RaiseEvent Click(eventArgument)
End Sub
Event Click(ByVal ButtonName As String)
End Class
Entonces en el Web Form cuando agrego el control esto es lo que hago en el evento click:
Private Sub Botones1_Click(ByVal ButtonName As String) Handles Botones1.Click
If ButtonName = "Boton2" then
''''codigo
ElseIf ButtonName = "Boton2" Then
''''codigo
End If
End Sub
El grandioso problema es que este evento se ejecuta dos veces, entonces al momento de insertar
un registro en la base de datos siempre me dice que el registro ya existe. De que otra forma puedo crear
un evento click para un control compuesto?. |