Pregunta

Quiero hacer uso de controles de usuario "complejos" con más de un elemento de control dentro.Es el mismo control que reutilizaré en la lista y ya tengo un control PlaceHolder para él.

Puedo agregar el control con LoadControl (ruta a .ascx) - ningún problema.

A través de mis propiedades personalizadas también puedo obtener/configurar el acceso a las etiquetas incrustadas, para poder inicializar cada control perfectamente.

Pero al agregar LinkButtons, me meto en problemas.

Cuando hago clic en el botón, aparece un "envío" de la página que muestra los controles;pero el evento del botón del control no parece activarse (¿o al menos PageLoad en la página principal parece activarse primero?) - No puedo entender a dónde va mi evento o dónde buscar un nombre/ID o parámetro para esto botón.

¿Cómo es que o qué estoy haciendo mal aquí?

He creado un "botón falso" ahora usando una etiqueta más con un "HREF A codificado" con una identificación en la URL, pero me gustaría saber qué evento necesito detectar y dónde o cómo iniciar el botón. porque quiero poder usar controles "ASP.NET predeterminados" para estos controles de usuario (con suerte, sin demasiada codificación fragmentada)...

¿Fue útil?

Solución

La única razón por la que los eventos se "pierden" es porque sus controles no se recrean de tal manera que ASP.Net pueda asociar el evento con el control después de la devolución.Lo hace mediante el uso de la propiedad ID.

En otras palabras, estás haciendo mal una de estas tres cosas:

1) Estás asignando los ID de tus botones de enlace de manera diferente durante la fase de creación en Init después de la devolución de datos.

2) Estás creando tus botones de enlace dinámicamente usando código, pero lo estás haciendo después de la fase de inicio del ciclo de vida de la página, para que tus controles no participen en ViewState.

3) Está volviendo a vincular la fuente de datos del control principal que contiene los botones de enlace en cada devolución de datos.Usar if (!IsPostBack) para evitar volver a vincularlo cada vez.

Sin ver su código, lamentablemente no puedo dar nada más específico que eso.

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