Timeline Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Define un segmento de tiempo.
public ref class Timeline abstract : System::Windows::Media::Animation::Animatable
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
[System.Windows.Markup.RuntimeNameProperty("Name")]
public abstract class Timeline : System.Windows.Media.Animation.Animatable
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
[<System.Windows.Markup.RuntimeNameProperty("Name")>]
type Timeline = class
inherit Animatable
Public MustInherit Class Timeline
Inherits Animatable
- Herencia
- Derivado
- Atributos
Comentarios
Una escala de tiempo representa un segmento de tiempo. Proporciona propiedades que permiten especificar la longitud de ese segmento, cuándo se debe iniciar, cuántas veces se repetirá, el tiempo rápido que avanza en ese segmento, etc.
Las clases que heredan de la clase de escala de tiempo proporcionan funcionalidad adicional, como la animación y la reproducción multimedia. A continuación se muestran ejemplos de algunos de los diferentes tipos de escalas de tiempo especializadas disponibles.
Animaciones: es AnimationTimeline un tipo de escala de tiempo que genera valores de salida. Cuando se asocia una animación a una propiedad, la animación actualiza el valor de la propiedad a medida que se reproduce, con lo que se "anima". Para obtener una introducción a las animaciones, vea Información general sobre animaciones. Para obtener información sobre las distintas formas de aplicar animaciones, vea La información general sobre las técnicas de animación de propiedades.
MediaTimelines: A MediaTimeline es un tipo de escala de tiempo que controla la reproducción de un archivo multimedia.
ParallelTimelines: es ParallelTimeline un tipo de escala de tiempo que agrupa otras escalas de tiempo.
Guiones gráficos: un Storyboard es un tipo especial de ParallelTimeline que proporciona información de objetos y propiedades dirigidas a las escalas de tiempo que contiene. Para obtener más información sobre Storyboard los objetos, vea Información general sobre guiones gráficos.
Para obtener más información sobre el uso de escalas de tiempo, vea Información general sobre animaciones. Para obtener una introducción a las características de tiempo de las escalas de tiempo, consulte Información general sobre los comportamientos de tiempo.
Enlaces de datos y animación de escalas de tiempo
La mayoría de las propiedades de escala de tiempo pueden estar enlazadas o animadas; sin embargo, debido a la forma en que funciona el sistema de control de tiempo, los datos enlazados o las escalas de tiempo animadas no se comportan como otros objetos enlazados o animados de datos. Para comprender su comportamiento, ayuda a comprender lo que significa activar una escala de tiempo.
Cuando se aplica una escala de tiempo, las copias se realizan de la escala de tiempo y sus escalas de tiempo secundarias. Estas copias se inmovilizan (se convierten en solo lectura) y Clock los objetos se crean a partir de ellas. Es estos relojes que realizan el trabajo real de animar las propiedades de destino. Si una escala de tiempo estaba enlazada a datos o animada, se realizó una instantánea de sus valores actuales cuando se creó su reloj. Aunque la escala de tiempo original podría seguir cambiando, su reloj no lo hace.
Para que una escala de tiempo refleje los cambios de enlace de datos o animación, se debe volver a generar su reloj. Los relojes no se regeneran automáticamente. A continuación se muestran varias maneras de aplicar los cambios de escala de tiempo:
Si la línea de tiempo es o pertenece a un Storyboard, puede hacer que refleje los cambios volviendo a aplicar su guión gráfico mediante un BeginStoryboard o los métodos Begin. Esto tiene el efecto secundario de reiniciar también la animación. En el código, puede usar el Seek método para avanzar el guión gráfico de nuevo a su posición anterior.
Si ha aplicado una animación directamente a una propiedad mediante el BeginAnimation método , llame al BeginAnimation método de nuevo y pásela la animación que se ha modificado.
Si trabaja directamente a nivel de reloj, cree y aplique un nuevo conjunto de relojes y úselos para reemplazar el conjunto de relojes generados anterior.
Para obtener un ejemplo de una animación enlazada a datos, vea el ejemplo de animación spline clave .
Usar una escala de tiempo como temporizador
El reloj de una escala de tiempo solo progresa cuando hay un controlador de eventos asociado a él o (en el caso de un AnimationClock objeto) está asociado a una propiedad . Por este motivo (y otros), no se recomienda usar como Timeline temporizador.
Constructores
| Nombre | Description |
|---|---|
| Timeline() |
Inicializa una nueva instancia de la clase Timeline. |
| Timeline(Nullable<TimeSpan>, Duration, RepeatBehavior) |
Inicializa una nueva instancia de la Timeline clase con el especificado BeginTime, Durationy RepeatBehavior. |
| Timeline(Nullable<TimeSpan>, Duration) |
Inicializa una nueva instancia de la Timeline clase con los valores especificados BeginTime y Duration. |
| Timeline(Nullable<TimeSpan>) |
Inicializa una nueva instancia de la Timeline clase con el especificado BeginTime. |
Campos
| Nombre | Description |
|---|---|
| AccelerationRatioProperty |
Identifica la AccelerationRatio propiedad de dependencia. |
| AutoReverseProperty |
Identifica la AutoReverse propiedad de dependencia. |
| BeginTimeProperty |
Identifica la BeginTime propiedad de dependencia. |
| DecelerationRatioProperty |
Identifica la DecelerationRatio propiedad de dependencia. |
| DesiredFrameRateProperty |
Identifica la DesiredFrameRate propiedad adjunta. |
| DurationProperty |
Identifica la Duration propiedad de dependencia. |
| FillBehaviorProperty |
Identifica la FillBehavior propiedad de dependencia. |
| NameProperty |
Identifica la Name propiedad de dependencia. |
| RepeatBehaviorProperty |
Identifica la RepeatBehavior propiedad de dependencia. |
| SpeedRatioProperty |
Identifica la SpeedRatio propiedad de dependencia. |
Propiedades
| Nombre | Description |
|---|---|
| AccelerationRatio |
Obtiene o establece un valor que especifica el porcentaje del Duration tiempo invertido en acelerar el paso del tiempo de cero a su tasa máxima. |
| AutoReverse |
Obtiene o establece un valor que indica si la escala de tiempo se reproduce inverso después de completar una iteración hacia delante. |
| BeginTime |
Obtiene o establece la hora en la que debe comenzar.Timeline |
| CanFreeze |
Obtiene un valor que indica si el objeto se puede hacer no modificable. (Heredado de Freezable) |
| DecelerationRatio |
Obtiene o establece un valor que especifica el porcentaje del Duration tiempo invertido en ralentizar el paso del tiempo de su tasa máxima a cero. |
| DependencyObjectType |
Obtiene el DependencyObjectType objeto que encapsula el tipo CLR de esta instancia. (Heredado de DependencyObject) |
| Dispatcher |
Obtiene el objeto al que DispatcherDispatcherObject está asociado. (Heredado de DispatcherObject) |
| Duration |
Obtiene o establece el período de tiempo durante el que se reproduce esta escala de tiempo, sin contar repeticiones. |
| FillBehavior |
Obtiene o establece un valor que especifica cómo Timeline se comporta después de que alcance el final de su período activo. |
| HasAnimatedProperties |
Obtiene un valor que indica si uno o varios AnimationClock objetos están asociados a cualquiera de las propiedades de dependencia de este objeto. (Heredado de Animatable) |
| IsFrozen |
Obtiene un valor que indica si el objeto se puede modificar actualmente. (Heredado de Freezable) |
| IsSealed |
Obtiene un valor que indica si esta instancia está actualmente sellada (solo lectura). (Heredado de DependencyObject) |
| Name |
Obtiene o establece el nombre de este Timelineobjeto . |
| RepeatBehavior |
Obtiene o establece el comportamiento repetido de esta escala de tiempo. |
| SpeedRatio |
Obtiene o establece la velocidad, relativa a su elemento primario, en el que avanza el tiempo para este Timelineobjeto . |
Propiedades adjuntas
| Nombre | Description |
|---|---|
| DesiredFrameRate |
Obtiene o establece la velocidad de fotogramas deseada para esta escala de tiempo y sus escalas de tiempo secundarias. |
Métodos
| Nombre | Description |
|---|---|
| AllocateClock() | |
| ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Aplica un AnimationClock objeto al especificado DependencyProperty. Si la propiedad ya está animada, se usa el especificado HandoffBehavior . (Heredado de Animatable) |
| ApplyAnimationClock(DependencyProperty, AnimationClock) |
Aplica un AnimationClock objeto al especificado DependencyProperty. Si la propiedad ya está animada, se usa el comportamiento de entrega SnapshotAndReplace . (Heredado de Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Aplica una animación al especificado DependencyProperty. La animación se inicia cuando se representa el siguiente fotograma. Si la propiedad especificada ya está animada, se usa el especificado HandoffBehavior . (Heredado de Animatable) |
| BeginAnimation(DependencyProperty, AnimationTimeline) |
Aplica una animación al especificado DependencyProperty. La animación se inicia cuando se representa el siguiente fotograma. Si la propiedad especificada ya está animada, se usa el comportamiento de entrega SnapshotAndReplace . (Heredado de Animatable) |
| CheckAccess() |
Determina si el subproceso que llama tiene acceso a este DispatcherObject. (Heredado de DispatcherObject) |
| ClearValue(DependencyProperty) |
Borra el valor local de una propiedad. Un identificador especifica DependencyProperty la propiedad que se va a borrar. (Heredado de DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Borra el valor local de una propiedad de solo lectura. La propiedad que se va a borrar se especifica mediante .DependencyPropertyKey (Heredado de DependencyObject) |
| Clone() |
Crea un clon modificable de este Timelineobjeto , haciendo copias profundas de los valores de este objeto. |
| CloneCore(Freezable) |
Convierte la instancia en un clon (copia profunda) del especificado Freezable mediante valores de propiedad base (no animados). (Heredado de Freezable) |
| CloneCurrentValue() |
Crea un clon modificable de este Timeline objeto, haciendo copias profundas de los valores actuales de este objeto. |
| CloneCurrentValueCore(Freezable) |
Convierte la instancia en un clon modificable (copia profunda) del especificado Freezable mediante los valores de propiedad actuales. (Heredado de Freezable) |
| CoerceValue(DependencyProperty) |
Coerce el valor de la propiedad de dependencia especificada. Esto se logra invocando cualquier CoerceValueCallback función especificada en metadatos de propiedad para la propiedad de dependencia tal como existe en la llamada DependencyObjecta . (Heredado de DependencyObject) |
| CreateClock() |
Crea un nuevo controlable Clock a partir de este Timelineobjeto . Si tiene Timeline elementos secundarios, se crea un árbol de relojes con esto Timeline como raíz. |
| CreateClock(Boolean) |
Crea un nuevo Clock a partir de este Timeline objeto y especifica si el nuevo Clock es controlable. Si tiene Timeline elementos secundarios, se crea un árbol de relojes con esto Timeline como raíz. |
| CreateInstance() |
Inicializa una nueva instancia de la clase Freezable. (Heredado de Freezable) |
| CreateInstanceCore() |
Cuando se implementa en una clase derivada, crea una nueva instancia de la Freezable clase derivada. (Heredado de Freezable) |
| Equals(Object) |
Determina si un proporcionado DependencyObject es equivalente al objeto actual DependencyObject. (Heredado de DependencyObject) |
| Freeze() |
Hace que el objeto actual no se pueda modificar y establezca su IsFrozen propiedad |
| FreezeCore(Boolean) |
Hace que esto Timeline no se pueda modificar o determina si se puede hacer no modificable. |
| GetAnimationBaseValue(DependencyProperty) |
Devuelve el valor no animado del especificado DependencyProperty. (Heredado de Animatable) |
| GetAsFrozen() |
Crea una copia inmovilizada de , Freezablemediante valores de propiedad base (no animados). Dado que la copia está inmovilizada, los sub-objetos congelados se copian por referencia. (Heredado de Freezable) |
| GetAsFrozenCore(Freezable) |
Convierte esta instancia en un clon del objeto especificado Timeline . |
| GetCurrentValueAsFrozen() |
Crea una copia inmovilizada de mediante los valores de Freezable propiedad actuales. Dado que la copia está inmovilizada, los sub-objetos congelados se copian por referencia. (Heredado de Freezable) |
| GetCurrentValueAsFrozenCore(Freezable) |
Convierte esta instancia en un clon inmovilizado del especificado Timeline. Las referencias de recursos, los enlaces de datos y las animaciones no se copian, pero sus valores actuales son. |
| GetDesiredFrameRate(Timeline) |
Obtiene la velocidad de fotograma deseada del especificado Timeline. |
| GetHashCode() |
Obtiene un código hash para este DependencyObjectobjeto . (Heredado de DependencyObject) |
| GetLocalValueEnumerator() |
Crea un enumerador especializado para determinar qué propiedades de dependencia tienen valores establecidos localmente en este DependencyObject. (Heredado de DependencyObject) |
| GetNaturalDuration(Clock) |
Devuelve la longitud de una sola iteración de este Timeline. |
| GetNaturalDurationCore(Clock) |
Devuelve la longitud de una sola iteración de este Timeline. Este método proporciona la implementación de GetNaturalDuration(Clock). |
| GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
| GetValue(DependencyProperty) |
Devuelve el valor efectivo actual de una propiedad de dependencia en esta instancia de .DependencyObject (Heredado de DependencyObject) |
| InvalidateProperty(DependencyProperty) |
Vuelve a evaluar el valor efectivo de la propiedad de dependencia especificada. (Heredado de DependencyObject) |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| OnChanged() |
Se llama cuando se modifica el objeto actual Freezable . (Heredado de Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Este miembro admite la infraestructura de Windows Presentation Foundation (WPF) y no está pensada para usarse directamente desde el código. (Heredado de Freezable) |
| OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Garantiza que los punteros de contexto adecuados se establecen para un DependencyObjectType miembro de datos que se acaba de establecer. (Heredado de Freezable) |
| OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Invalida la DependencyObject implementación de OnPropertyChanged(DependencyPropertyChangedEventArgs) para invocar también los Changed controladores en respuesta a una propiedad de dependencia cambiante de tipo Freezable. (Heredado de Freezable) |
| ReadLocalValue(DependencyProperty) |
Devuelve el valor local de una propiedad de dependencia, si existe. (Heredado de DependencyObject) |
| ReadPreamble() |
Garantiza que Freezable se accede a desde un subproceso válido. Los heredadores de Freezable deben llamar a este método al principio de cualquier API que lea miembros de datos que no sean propiedades de dependencia. (Heredado de Freezable) |
| SetCurrentValue(DependencyProperty, Object) |
Establece el valor de una propiedad de dependencia sin cambiar su origen de valor. (Heredado de DependencyObject) |
| SetDesiredFrameRate(Timeline, Nullable<Int32>) |
Establece la velocidad de fotogramas deseada del especificado Timeline. |
| SetValue(DependencyProperty, Object) |
Establece el valor local de una propiedad de dependencia, especificado por su identificador de propiedad de dependencia. (Heredado de DependencyObject) |
| SetValue(DependencyPropertyKey, Object) |
Establece el valor local de una propiedad de dependencia de solo lectura, especificada por el DependencyPropertyKey identificador de la propiedad de dependencia. (Heredado de DependencyObject) |
| ShouldSerializeProperty(DependencyProperty) |
Devuelve un valor que indica si los procesos de serialización deben serializar el valor de la propiedad de dependencia proporcionada. (Heredado de DependencyObject) |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
| VerifyAccess() |
Exige que el subproceso de llamada tenga acceso a este DispatcherObject. (Heredado de DispatcherObject) |
| WritePostscript() |
Genera el Changed evento para e Freezable invoca su OnChanged() método . Las clases que derivan de Freezable deben llamar a este método al final de cualquier API que modifique los miembros de clase que no se almacenan como propiedades de dependencia. (Heredado de Freezable) |
| WritePreamble() |
Comprueba que Freezable no está inmovilizado y que se accede a él desde un contexto de subproceso válido. Freezable Los heredares deben llamar a este método al principio de cualquier API que escriba en miembros de datos que no sean propiedades de dependencia. (Heredado de Freezable) |
Eventos
| Nombre | Description |
|---|---|
| Changed |
Se produce cuando se modifica o Freezable un objeto que contiene. (Heredado de Freezable) |
| Completed |
Se produce cuando esta escala de tiempo ha terminado de reproducirse completamente: ya no entrará en su período activo. |
| CurrentGlobalSpeedInvalidated |
Se produce cuando cambia la velocidad a la que avanza el tiempo para el reloj de la escala de tiempo. |
| CurrentStateInvalidated |
Se produce cuando se actualiza la CurrentState propiedad de la escala de tiempo Clock . |
| CurrentTimeInvalidated |
Se produce cuando se actualiza la CurrentTime propiedad de la escala de tiempo Clock . |
| RemoveRequested |
Se produce cuando se quita el reloj creado para esta escala de tiempo o una de sus escalas de tiempo primarias. |