Timeline Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Define um segmento de tempo.
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
- Herança
- Derivado
- Atributos
Comentários
Uma linha do tempo representa um segmento de tempo. Ela fornece propriedades que permitem que você especifique o comprimento desse segmento, quando ele deve ser iniciado, quantas vezes ele se repetirá, quão rápido o tempo progride nesse segmento e muito mais.
As classes que herdam da classe linha do tempo fornecem funcionalidades adicionais, como animação e reprodução de mídia. Veja a seguir exemplos de alguns dos diferentes tipos de linhas do tempo especializadas disponíveis.
Animações: um AnimationTimeline é um tipo de linha do tempo que produz valores de saída. Quando você associa uma animação a uma propriedade, a animação atualiza o valor da propriedade à medida que ela é reproduzida, "animando". Para obter uma introdução às animações, consulte Visão geral da animação. Para obter informações sobre as diferentes maneiras de aplicar animações, consulte Visão geral das técnicas de animação de propriedade.
MediaTimelines: A MediaTimeline é um tipo de linha do tempo que controla a reprodução de um arquivo de mídia.
ParallelTimelines: A ParallelTimeline é um tipo de linha do tempo que agrupa outras linhas do tempo.
Storyboards: um Storyboard é um tipo especial de que fornece informações de direcionamento de ParallelTimeline objeto e propriedade para as linhas do tempo que ele contém. Para obter mais informações sobre Storyboard objetos, consulte a Visão geral de Storyboards.
Para obter mais informações sobre como usar linhas do tempo, consulte Visão geral da animação. Para obter uma introdução aos recursos de tempo das linhas do tempo, consulte Visão geral dos comportamentos de tempo.
Linhas do tempo de associação e animação de dados
A maioria das propriedades da linha do tempo pode ser associada a dados ou animada; no entanto, devido à maneira como o sistema de tempo funciona, as linhas do tempo vinculadas a dados ou animadas não se comportam como outros objetos animados ou associados a dados. Para entender seu comportamento, ajuda a entender o que significa ativar uma linha do tempo.
Quando uma linha do tempo é aplicada, as cópias são feitas da linha do tempo e de suas linhas do tempo filho. Essas cópias são congeladas (feitas somente leitura) e Clock os objetos são criados a partir delas. São esses relógios que fazem o trabalho real de animar as propriedades de destino. Se uma linha do tempo tiver sido associada a dados ou animada, um instantâneo de seus valores atuais foi feito quando seu relógio foi criado. Embora a linha do tempo original possa continuar a mudar, seu relógio não.
Para que uma linha do tempo reflita as alterações de associação de dados ou animação, seu relógio deve ser regenerado. Os relógios não são regenerados automaticamente para você. A seguir estão várias maneiras para aplicar alterações de linha do tempo:
Se a linha do tempo for ou pertencer a um Storyboard, você poderá fazer com que ela reflita as alterações reaplicando seu storyboard usando um BeginStoryboard ou o Begin método . Isso tem o efeito colateral de também reiniciar a animação. No código, você pode usar o Seek método para avançar o storyboard de volta para sua posição anterior.
Se você aplicou uma animação diretamente a uma propriedade usando o BeginAnimation método , chame o BeginAnimation método novamente e passe a animação que foi modificada.
Se você estiver trabalhando diretamente no nível do relógio, crie e aplique um novo conjunto de relógios e use-os para substituir o conjunto anterior de relógios gerados.
Para obter um exemplo de animação associada a dados, consulte o exemplo de animação de spline de chave .
Usando uma linha do tempo como temporizador
O relógio de uma linha do tempo só progredirá quando houver um manipulador de eventos associado a ele ou (no caso de um AnimationClock objeto) ele estiver associado a uma propriedade. Por esse motivo (e outros), não é recomendável que você use um Timeline como temporizador.
Construtores
Timeline() |
Inicializa uma nova instância da classe Timeline. |
Timeline(Nullable<TimeSpan>) |
Inicializa uma nova instância da classe Timeline com o BeginTime especificado. |
Timeline(Nullable<TimeSpan>, Duration) |
Inicializa uma nova instância da classe Timeline com o BeginTime e Duration especificados. |
Timeline(Nullable<TimeSpan>, Duration, RepeatBehavior) |
Inicializa uma nova instância da classe Timeline com o BeginTime, Duration e RepeatBehavior especificados. |
Campos
AccelerationRatioProperty |
Identifica a propriedade de dependência AccelerationRatio. |
AutoReverseProperty |
Identifica a propriedade de dependência AutoReverse. |
BeginTimeProperty |
Identifica a propriedade de dependência BeginTime. |
DecelerationRatioProperty |
Identifica a propriedade de dependência de DecelerationRatio. |
DesiredFrameRateProperty |
Identifica a propriedade DesiredFrameRate anexada. |
DurationProperty |
Identifica a propriedade de dependência Duration. |
FillBehaviorProperty |
Identifica a propriedade de dependência FillBehavior. |
NameProperty |
Identifica a propriedade de dependência Name. |
RepeatBehaviorProperty |
Identifica a propriedade de dependência RepeatBehavior. |
SpeedRatioProperty |
Identifica a propriedade de dependência de SpeedRatio. |
Propriedades
AccelerationRatio |
Obtém ou define um valor que especifica o percentual do Duration da linha do tempo gasto que acelera a passagem de tempo de zero até sua taxa máxima. |
AutoReverse |
Obtém ou define um valor que indica se a linha do tempo é executada em ordem inversa após concluir uma iteração na ordem comum. |
BeginTime |
Obtém ou define a hora em que esse Timeline deve começar. |
CanFreeze |
Obtém um valor que indica se o objeto pode se tornar não modificável. (Herdado de Freezable) |
DecelerationRatio |
Obtém ou define um valor que especifica o percentual do Duration da linha do tempo gasto que desacelera a passagem de tempo de sua taxa máxima até zero. |
DependencyObjectType |
Obtém o DependencyObjectType que encapsula o tipo CLR dessa instância. (Herdado de DependencyObject) |
Dispatcher |
Obtém o Dispatcher ao qual este DispatcherObject está associado. (Herdado de DispatcherObject) |
Duration |
Obtém ou define o período para o qual essa linha do tempo é reproduzida, sem contar repetições. |
FillBehavior |
Obtém ou define um valor que especifica como a Timeline se comporta depois que atinge o final do seu período ativo. |
HasAnimatedProperties |
Obtém um valor que indica se um ou mais objetos AnimationClock está associado a qualquer uma das propriedades de dependência do objeto. (Herdado de Animatable) |
IsFrozen |
Obtém um valor que indica se o objeto pode ser modificado no momento. (Herdado de Freezable) |
IsSealed |
Obtém um valor que indica se essa instância está validada no momento (somente leitura). (Herdado de DependencyObject) |
Name |
Obtém ou define o nome deste Timeline. |
RepeatBehavior |
Obtém ou define o comportamento de repetição desta linha do tempo. |
SpeedRatio |
Obtém ou define a taxa, em relação ao pai, na qual o tempo progride para isso Timeline. |
Propriedades Anexadas
DesiredFrameRate |
Obtém ou define a taxa de quadros desejada para esta linha do tempo e suas linhas do tempo filhas. |
Métodos
AllocateClock() | |
ApplyAnimationClock(DependencyProperty, AnimationClock) |
Aplica um AnimationClock ao DependencyProperty especificado. Se a propriedade já tiver sido animada, o comportamento de entrega de SnapshotAndReplace será usado. (Herdado de Animatable) |
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Aplica um AnimationClock ao DependencyProperty especificado. Se a propriedade já for animada, o HandoffBehavior especificado será usado. (Herdado de Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline) |
Aplica uma animação ao DependencyProperty especificado. A animação é iniciada quando o próximo quadro for renderizado. Se a propriedade especificada já tiver sido animada, o comportamento de entrega de SnapshotAndReplace será usado. (Herdado de Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Aplica uma animação ao DependencyProperty especificado. A animação é iniciada quando o próximo quadro for renderizado. Se a propriedade especifica já for animada, o HandoffBehavior especificado será usado. (Herdado de Animatable) |
CheckAccess() |
Determina se o thread de chamada tem acesso a este DispatcherObject. (Herdado de DispatcherObject) |
ClearValue(DependencyProperty) |
Limpa o valor local de uma propriedade. A propriedade a ser limpa é especificada por um identificador DependencyProperty. (Herdado de DependencyObject) |
ClearValue(DependencyPropertyKey) |
Limpa o valor local de uma propriedade somente leitura. A propriedade a ser limpa é especificada por um DependencyPropertyKey. (Herdado de DependencyObject) |
Clone() |
Cria um clone modificável desse Timeline, fazendo cópias em profundidade dos valores do objeto. |
CloneCore(Freezable) |
Faz com que a instância seja um clone (cópia em profundidade) do Freezable especificado usando valores de propriedade base (não animados). (Herdado de Freezable) |
CloneCurrentValue() |
Cria um clone modificável desse objeto Timeline, fazendo cópias em profundidade dos valores do objeto atual. |
CloneCurrentValueCore(Freezable) |
Torna a instância um clone modificável (cópia em profundidade) do Freezable especificado usando os valores de propriedade atuais. (Herdado de Freezable) |
CoerceValue(DependencyProperty) |
Converte o valor da propriedade de dependência especificada. Isso é feito invocando qualquer função CoerceValueCallback especificada nos metadados de propriedade para a propriedade de dependência, visto que ela existe na chamada a DependencyObject. (Herdado de DependencyObject) |
CreateClock() |
Cria um novo Clock controlável desta Timeline. Se esta Timeline tiver filhas, uma árvore de relógios será criada com esta Timeline como a raiz. |
CreateClock(Boolean) |
Cria um novo Clock desta Timeline e especifica se o novo Clock é controlável. Se esta Timeline tiver filhas, uma árvore de relógios será criada com esta Timeline como a raiz. |
CreateInstance() |
Inicializa uma nova instância da classe Freezable. (Herdado de Freezable) |
CreateInstanceCore() |
Quando implementado em uma classe derivada, cria uma nova instância da classe derivada Freezable. (Herdado de Freezable) |
Equals(Object) |
Determina se um DependencyObject fornecido é equivalente ao DependencyObject atual. (Herdado de DependencyObject) |
Freeze() |
Torna o objeto atual não modificável e define sua propriedade IsFrozen para |
FreezeCore(Boolean) |
Altera esta Timeline para não modificável ou determina se ela pode ser alterada para não modificável. |
GetAnimationBaseValue(DependencyProperty) |
Retorna o valor não animado do DependencyProperty especificado. (Herdado de Animatable) |
GetAsFrozen() |
Cria uma cópia congelada o Freezable usando valores de propriedade base (não animadas). Já que a cópia está congelada, quaisquer subobjetos congelados são copiados por referência. (Herdado de Freezable) |
GetAsFrozenCore(Freezable) |
Torna essa instância um clone do objeto Timeline especificado. |
GetCurrentValueAsFrozen() |
Cria uma cópia congelada do Freezable usando valores de propriedade atuais. Já que a cópia está congelada, quaisquer subobjetos congelados são copiados por referência. (Herdado de Freezable) |
GetCurrentValueAsFrozenCore(Freezable) |
Torna essa instância um clone congelado do Timeline especificado. Referências a recursos, vinculações de dados e animações não são copiadas, mas seus valores atuais são. |
GetDesiredFrameRate(Timeline) |
Obtém a taxa de quadros desejada da Timeline especificada. |
GetHashCode() |
Obtém o código hash para esse DependencyObject. (Herdado de DependencyObject) |
GetLocalValueEnumerator() |
Cria um enumerador especializado para determinar quais propriedades de dependência têm valores definidos localmente nessa DependencyObject. (Herdado de DependencyObject) |
GetNaturalDuration(Clock) |
Retorna o comprimento de uma única iteração desta Timeline. |
GetNaturalDurationCore(Clock) |
Retorna o comprimento de uma única iteração desta Timeline. Esse método fornece a implementação para GetNaturalDuration(Clock). |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
GetValue(DependencyProperty) |
Retorna o valor efetivo atual de uma propriedade de dependência nessa instância de um DependencyObject. (Herdado de DependencyObject) |
InvalidateProperty(DependencyProperty) |
Reavalia o valor efetivo para a propriedade de dependência especificada. (Herdado de DependencyObject) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
OnChanged() |
Chamado quando o objeto Freezable atual é modificado. (Herdado de Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Garante que os ponteiros de contexto apropriados sejam estabelecidos para um membro de dados DependencyObjectType que foi recém-definido. (Herdado de Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Esse membro dá suporte à infraestrutura do WPF (Windows Presentation Foundation) e não se destina a ser usado diretamente do seu código. (Herdado de Freezable) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Substitui a implementação DependencyObject de OnPropertyChanged(DependencyPropertyChangedEventArgs) para também invocar quaisquer manipuladores Changed em resposta à alteração de uma propriedade de dependência do tipo Freezable. (Herdado de Freezable) |
ReadLocalValue(DependencyProperty) |
Retorna o valor local de uma propriedade de dependência, local, se houver. (Herdado de DependencyObject) |
ReadPreamble() |
Garante que o Freezable esteja sendo acessado de um thread válido. Herdeiros do Freezable devem chamar esse método no início de qualquer API que lê membros de dados que não são propriedades de dependência. (Herdado de Freezable) |
SetCurrentValue(DependencyProperty, Object) |
Define o valor da propriedade de dependência sem alterar a origem do valor. (Herdado de DependencyObject) |
SetDesiredFrameRate(Timeline, Nullable<Int32>) |
Define a taxa de quadros desejada do Timeline especificado. |
SetValue(DependencyProperty, Object) |
Define o valor local de uma propriedade de dependência, especificada pelo identificador da propriedade de dependência. (Herdado de DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Define o valor de uma propriedade de dependência somente leitura, especificada pelo identificador DependencyPropertyKey da propriedade de dependência. (Herdado de DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Retorna um valor que indica se os processos de serialização devem serializar o valor da propriedade de dependência fornecida. (Herdado de DependencyObject) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
VerifyAccess() |
Impõe que o thread de chamada tenha acesso a este DispatcherObject. (Herdado de DispatcherObject) |
WritePostscript() |
Aciona o evento Changed para o Freezable e invoca o respectivo método OnChanged(). Classes que derivam de Freezable devem chamar este método no final de qualquer API que modifica os membros de classe que não são armazenados como propriedades de dependência. (Herdado de Freezable) |
WritePreamble() |
Verifica se o Freezable não está congelado e está sendo acessado de um contexto de threading válido. Herdeiros do Freezable devem chamar esse método no início de qualquer API que grava em membros de dados que não são propriedades de dependência. (Herdado de Freezable) |
Eventos
Changed |
Ocorre quando o Freezable ou um objeto nele contido é modificado. (Herdado de Freezable) |
Completed |
Ocorre quando essa linha do tempo concluiu a reprodução completamente: ela não inserirá seu período ativo. |
CurrentGlobalSpeedInvalidated |
Ocorre quando há alteração na taxa em que o tempo do relógio da linha do tempo progride. |
CurrentStateInvalidated |
Ocorre quando a propriedade CurrentState do Clock da linha do tempo é atualizada. |
CurrentTimeInvalidated |
Ocorre quando a propriedade CurrentTime do Clock da linha do tempo é atualizada. |
RemoveRequested |
Ocorre quando o relógio criado para essa linha do tempo ou para uma de suas linhas do tempo pais é removido. |