Compartir a través de


Agregar o quitar un desencadenador

Esta página es específica de proyectos WPF

Puede usar desencadenadores para iniciar y detener escalas de tiempo de animaciones o para cambiar propiedades de objetos. Hay dos tipos de desencadenadores:

  • Desencadenador de propiedad   Mecanismo por el cual un cambio en una propiedad (como la propiedad IsPressed) desencadena un cambio instantáneo en otra propiedad o un cambio gradual mediante una escala de tiempo animada. Los desencadenadores de propiedad se pueden establecer en el estilo o en la plantilla de un control. Para obtener ejemplos de configuración de desencadenadores de propiedad en estilos simples de controles comunes, vea los temas enumerados bajo el encabezado Inténtelo, en Estilos simples.

  • Desencadenador de eventos   Mecanismo por el cual un evento (como un evento Click del mouse) desencadena una escala de tiempo de animación. Los desencadenadores de eventos se pueden establecer en cualquier objeto de la mesa de trabajo, en el estilo o plantilla de un control, en un control de usuario o en la raíz del documento. Para obtener ejemplos de configuración de desencadenadores de eventos en estilos simples de controles comunes, vea los temas enumerados bajo el encabezado Inténtelo, en Estilos simples.

Para obtener más información, vea Información general sobre desencadenadores.

[!NOTA]

Los desencadenadores se agregan en el mismo ámbito que la escala de tiempo de la animación que manipulan. Por ejemplo, no puede establecer un desencadenador en el ámbito de edición del documento principal que iniciará una escala de tiempo de animación en la plantilla de control de un botón, aunque el botón esté en el documento. Sin embargo, puede establecer un desencadenador dentro de una plantilla de control que inicie una animación en la misma plantilla de control. Lo mismo se aplica en el caso de animaciones incluidas en los controles de usuario usados en el documento.

Para agregar un desencadenador de propiedad

  1. En Objetos y escala de tiempo, seleccione el control cuyo estilo o plantilla desea modificar.

  2. En el menú Objeto, realice una de las acciones siguientes:

    • Para editar el estilo del control, seleccione Editar estilo y, a continuación, haga clic en Editar una copia.

    • Para editar la plantilla del control, seleccione Editar partes del control (Plantilla) y, a continuación, haga clic en Editar una copia.

    Se abrirá el cuadro de diálogo Crear recurso de estilo.

    [!NOTA]

    Para obtener información acerca de estilos y plantillas, y una tabla que los compare, vea la sección de estilos y plantillas de Información general acerca de los controles.

  3. Haga clic en Aceptar para salir del cuadro de diálogo y abrir el estilo o plantilla para editarlos.

    [!NOTA]

    Este procedimiento se ha simplificado enormemente para poder centrarse en la configuración de desencadenadores de propiedad. Para obtener más información acerca de las diferencias entre los estilos y plantillas, vea la sección estilos y plantillas de Información general acerca de los controles. Para obtener más información acerca de las opciones del cuadro de diálogo Crear recurso de estilo, vea Crear un recurso de estilo y Crear o editar una plantilla de control.

  4. En Desencadenadores, es posible que ya esté establecido algún desencadenador de propiedad para los estados de control como IsEnabled=True. Si no ve un estado que sea apropiado para el desencadenador, haga clic en el botón Agregar desencadenador de propiedadCc295196.9871399d-14aa-4955-9934-04f33700f273(es-es,Expression.10).png.

    Se agregará un desencadenador de propiedad predeterminado (MinWidth=0) a la lista, que quedará seleccionado para su edición. Además, la mesa de trabajo cambia al modo de grabación del desencadenador.

  5. Haga clic en las flechas de lista desplegable bajo Activado cuando para poder modificar la propiedad y el valor que activará el desencadenador. Por ejemplo, si va a modificar la plantilla de un control de casilla, puede seleccionar target-element.IsChecked=true para que el desencadenador se active cuando se seleccione la casilla.

    Ahora podrá especificar lo que ocurrirá cuando se active el desencadenador.

    [!NOTA]

    Si desea cambiar la propiedad de target-element al nombre de un elemento en la plantilla, deberá seleccionar primero el elemento en Objetos y escala de tiempo.

  6. Para que una propiedad cambie cuando se active el desencadenador, sólo tiene que seleccionar un objeto en Objetos y escala de tiempo y cambiar una propiedad en el panel Propiedades. Esto funciona porque se encuentra en el modo de grabación del desencadenador.

    El cambio de propiedad aparece en Propiedades cuando está activo.

  7. Para controlar la escala de tiempo de una animación cuando se active el desencadenador, haga clic en el botón Agregar nueva acciónCc295196.d02551d0-d56a-4ca3-9d5f-58fbc6bda0c3(es-es,Expression.10).png junto a Acciones al activar.

    • Si no hay ninguna escala de tiempo de animación que elegir, se abrirá el cuadro de diálogo Es necesaria una escala de tiempo para preguntarle si desea crear una escala de tiempo nueva. Haga clic en Aceptar y cree la animación mediante el establecimiento de fotogramas clave y objetos.

    • Si existe una escala de tiempo de animación, aparecerá una lista desplegable con la escala de tiempo y una opción para crear otra nueva.

    La escala de tiempo aparece debajo de Acciones al activar establecida en Begin.

  8. Para salir del ámbito de edición del estilo o de la plantilla, haga clic en Ámbito superiorCc295196.55844eb3-ed98-4f20-aa66-a6f5b23eeb2b(es-es,Expression.10).png. Presione F5 para ejecutar la aplicación de forma que pueda probar el nuevo desencadenador.

Cc295196.7e183f1f-37d8-4dcb-980c-19a5d61ca087(es-es,Expression.10).gifVolver al principio

Para agregar un desencadenador de eventos

  1. En Objetos y escala de tiempo, seleccione un objeto que active el desencadenador cuando se interactúe con él. Por ejemplo, si desea que se active el desencadenador cuando el usuario mueva el puntero del mouse sobre un cuadro de texto, seleccione el cuadro de texto.

  2. En Desencadenadores, haga clic en el botón Agregar desencadenador de eventoCc295196.671c69bb-32e9-4ef9-9837-29403524abd0(es-es,Expression.10).png.

    • Se agregará un desencadenador predeterminado (Cuando se origina Window.Loaded).
  3. Haga clic en las flechas de lista desplegable para modificar el evento que activará el desencadenador. Por ejemplo, si desea que el desencadenador se active cuando el usuario mueva el puntero del mouse sobre un cuadro de texto, cambie Cuando se origina Window.Loaded a Cuando se origina textBox.MouseMove.

    [!NOTA]

    Si desea cambiar el evento de Window al nombre de un elemento en la plantilla, deberá seleccionar primero el elemento en Objetos y escala de tiempo.

  4. Para controlar la escala de tiempo de una animación cuando se active el desencadenador, haga clic en el botón Agregar nueva acciónCc295196.d02551d0-d56a-4ca3-9d5f-58fbc6bda0c3(es-es,Expression.10).png junto a Cuando se origina checkBox.MouseMove.

    • Si no existe ninguna escala de tiempo de animación que elegir, se abrirá el cuadro de diálogo Es necesaria una escala de tiempo para preguntarle si desea crear una escala de tiempo nueva. Haga clic en Aceptar y cree la animación mediante el establecimiento de fotogramas clave y objetos.

    • Si existe una escala de tiempo de animación, aparecerá una lista desplegable con la escala de tiempo y una opción para crear otra nueva.

    La escala de tiempo aparece debajo de Cuando se origina checkBox.MouseMove y está establecida en Begin.

  5. Presione F5 para ejecutar la aplicación de forma que pueda probar el nuevo desencadenador.

Cc295196.7e183f1f-37d8-4dcb-980c-19a5d61ca087(es-es,Expression.10).gifVolver al principio

Para quitar un desencadenador

  1. En Desencadenadores, seleccione el desencadenador que desea quitar.

    [!NOTA]

    Si el desencadenador que desea quitar se encuentra en un estilo o plantilla de control, asegúrese de que se encuentra en el modo de edición del estilo o de la plantilla.

  2. Haga clic en el botón Eliminar desencadenadorCc295196.d31907a6-867b-4e16-b860-f07c9531fbd7(es-es,Expression.10).png.

  3. El desencadenador se quitará de la lista.

Cc295196.7e183f1f-37d8-4dcb-980c-19a5d61ca087(es-es,Expression.10).gifVolver al principio