Definir Evento para WebControl y usarlo con ASCX

27/11/2007 - 14:04 por Alhambra Eidos Kiquenet | Informe spam
Hola a todos,

tengo un webcontrol (custom), y quiero usarlo en un usercontrol ASCX.
Para mi webcontrol defino un evento como se ve en el código a continuación:

/// <summary>Control DropDownExtender para Ordenacion</summary>
[DefaultProperty("TargetControlID"), ToolboxItem(true),
ToolboxData("<{0}:DropDownExtenderOrdenacion
runat=server></{0}:DropDownExtenderOrdenacion>")]
public class DropDownExtenderOrdenacion : DropDownExtender
...

/// <summary>Click ordenación Asc</summary>
public event EventHandler ClickAscendente;

...
void lnkAscendente_Click(object sender, EventArgs e)
{
this.OnClickAscendente();
}


protected void OnClickAscendente()
{
EventArgs e = new EventArgs();
if (ClickAscendente != null) ClickAscendente(this, e);
RaiseBubbleEvent(this, e);
}


En el ASCX lo uso así:

<ordenacion:DropDownExtenderOrdenacion ID="ddeOrdenacionTasador"
runat="server" TargetControlID="lbTareasAsignadas_Columna_ClaveTasa"
ClickAscendente="OrdenacionAscendenteTasador_Click" />

Entonces al ejecutar aparece un error así:
Parser Error Message: Type
'Cliente.Util.Controles.Ordenacion.DropDownExtenderOrdenacion' does not have
a public property named 'ClickAscendente'.

ClickAscendente no es propiedad, e sun evento que quisiera poder asignar
desde el código HTML del ASCX, tal como se hace para los botones, linkbutton,
etcétera

<asp:LinkButton ID="LinkButton1" runat="server"
CssClass="ContextMenuOrdenacionItem"
OnClientClick="ocultarDDEOrdenacionTareasAsignadas();"
CommandArgument='< %# Eval("ComponentIndex") % >'
Enabled="true"
OnClick="OrdenacionAscendenteTipoTarea_Click" >Ascendente</asp:LinkButton>

Por ejemplo, para el linkbutton se define
OnClick="OrdenacionAscendenteTipoTarea_Click", una propiedad para establecer
un valor al evento Click del control.

Podría hacer algo así para mi webcontrol ? Alguna idea?

Gracias de antemano, saludos.




http://www.alhambra-eidos.es/web2005/index.html
www.kiquenet.net
http://www.setbb.com/putainformatic...opic.php?p„3
www.trabajobasura.com/solusoft
 

Leer las respuestas

#1 Alberto Poblacion
28/11/2007 - 10:18 | Informe spam
"Alhambra Eidos Kiquenet"
wrote in message news:
[...]
<ordenacion:DropDownExtenderOrdenacion ID="ddeOrdenacionTasador"
runat="server" TargetControlID="lbTareasAsignadas_Columna_ClaveTasa"
ClickAscendente="OrdenacionAscendenteTasador_Click" />

Entonces al ejecutar aparece un error así:
Parser Error Message: Type
'Cliente.Util.Controles.Ordenacion.DropDownExtenderOrdenacion' does not
have
a public property named 'ClickAscendente'.



Tienes que anteponerle el prefijo "On" en el atributo al nombre del
evento para que lo reconozca como tal:

<ordenacion:DropDownExtenderOrdenacion ID="ddeOrdenacionTasador"
... OnClickAscendente="OrdenacionAscendenteTasador_Click" />

Preguntas similares