Pregunta

Estoy desarrollando un control compuesto para una aplicación ASP.NET y solo por casualidad desarrollé inicialmente el control para usar una placa de elementos para crear sus controles secundarios. Habrá una serie de botones dentro de los controles de los niños que se manejarán en el control de la raíz. Estoy usando las propiedades OnBubbleEvent con CommandName/CommandARGument en los botones para conectarlo todo. Y todo funcionó muy bien ... hasta que cambié las plantillas a los controles.

Cuando convertí la plantilla en un control y llamé control.Add (nuevo ChildControl ()) en mi control de raíz en lugar de instanciariN (esto), el burbujeo de eventos ya no funciona.

¿Alguna idea de por qué?

(Todo, y quiero decir todo, de lo contrario es lo mismo).

¿Fue útil?

Solución

Su control compuesto debe implementar la interfaz InamingContainer para recibir llamadas de BubbleEvent. La clase de compositecontrol ya implementa esta interfaz ... en su caso dejó de funcionar no por asunto de la placa de elementos, sino porque cambió la herencia de Compositecontrol a Control.

Mira esto: http://msdn.microsoft.com/en-us/library/system.web.ui.control.onbubbleevent.aspx

Lo dicen allí.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top