Sobrescribir eventos de plantilla
Esta función avanzada permite indicar, en cada control Marcador de posición, un conjunto de acciones que se ejecutan cuando se ejecuta la plantilla de control correspondiente. Estas acciones sobrescriben las que se definieron en la plantilla de control y se desencadenan cuando ocurre cualquier evento de acción definido en la plantilla de control. Esto significa que puede definir un conjunto distinto de acciones para cada control Marcador de posición. De esta manera, puede modificar cada plantilla de control a nivel del marcador de posición individualmente. Por ejemplo, si tres marcadores de posición usan una misma plantilla de control y quiere modificar esa plantilla de control cuando la instancie uno de los controles de posición, entonces defina un conjunto de acciones que sobrescriban ese control marcador de posición en concreto.
Nota: | Si hay varios marcadores de posición antecesores de la plantilla de control cuando esta se activa, el marcador de posición antecesor más externo se instancia con cualquier sustitución que pueda tener y luego llama al siguiente marcador de posición en la jerarquía. Esto continúa hasta que, finalmente, se alcanza la plantilla de control. |
Nota: | Si desea evitar que una plantilla de control se sobrescriba por un marcador de posición que tenga una sustitución definida para él, cuando se active la plantilla de control, se ejecutará el primer marcador de posición ascendiente que tenga una sustitución definida para él. |
Sobrescribir acciones de plantillas de control
En una plantilla de control se pueden definir un conjunto de acciones que sobrescriban a las acciones definidas en una plantilla de control. Para ello siga estos pasos:
1.Seleccione la plantilla de control en la que quiere cambiar acciones.
2.En el panel Estilos y Propiedades vaya a las propiedades de control del marcador de posición y haga clic en el botón Más opciones de su propiedad Acción de control (ver imagen siguiente). Otra opción es hacer clic con el botón derecho en el control Marcador de posición y seleccionar, en el menú contextual que aparece, El evento Plantilla de control sobrescribe.
3.En la ventana Acciones que aparece, introduzca el conjunto de acciones que quiere añadir al panel Plantilla de control (imagen siguiente).
En la imagen anterior, las acciones de la plantilla de control se han modificado añadiendo una acción If-Then-Else:
•Si el idioma del dispositivo cliente es inglés, entonces la plantilla de control se ejecuta normalmente. Para ello, en la rama Entonces se añade una acción Pila de llamadas de plantilla de evento (marcada en el panel Acciones de la izquierda). Esta acción instancia la plantilla de control.
•Si el idioma del dispositivo cliente no es inglés, entonces se abre un cuadro de mensaje. La acción Cuadro de mensaje se añade a la rama Otro.
En caso de que la plantilla de control contenga más de un control, puede seleccionar distintas acciones para cada evento de control; para ello use el procesamiento condicional que comprueba el valor de las variables $MT_ControlKind o $MT_ControlName.
Evitar la acción Sobrescribir
Si desea evitar que las acciones de un control en una plantilla de control se sobrescriban por las acciones de un marcador de posición, seleccione la opción true en la propiedad del control Evitar la acción Sobrescribir (ver imagen siguiente). Esta propiedad también está disponible para los marcadores de posición de una plantilla de control.
Tenga en cuenta que la propiedad Evitar la acción Sobrescribir sólo está disponible para controles y marcadores de posición en plantillas de control. Su valor predeterminado es false, y determina si cualquier sustitución definida en los marcadores de posición utilizados en la plantilla de control se sobrescribirá o no.