Animatable.ApplyAnimationClock 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 AnimationClock사용하여 지정된 DependencyProperty 애니메이션 효과를 니다.
오버로드
ApplyAnimationClock(DependencyProperty, AnimationClock) |
지정된 DependencyPropertyAnimationClock 적용합니다. 속성에 이미 애니메이션이 적용된 경우 SnapshotAndReplace 전달 동작이 사용됩니다. |
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
지정된 DependencyPropertyAnimationClock 적용합니다. 속성에 이미 애니메이션이 적용된 경우 지정된 HandoffBehavior 사용됩니다. |
ApplyAnimationClock(DependencyProperty, AnimationClock)
지정된 DependencyPropertyAnimationClock 적용합니다. 속성에 이미 애니메이션이 적용된 경우 SnapshotAndReplace 전달 동작이 사용됩니다.
public:
virtual void ApplyAnimationClock(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationClock ^ clock);
public void ApplyAnimationClock (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationClock clock);
abstract member ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock -> unit
override this.ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock -> unit
Public Sub ApplyAnimationClock (dp As DependencyProperty, clock As AnimationClock)
매개 변수
애니메이션 효과를 주려는 속성입니다.
- clock
- AnimationClock
지정된 속성에 애니메이션 효과를 적용할 시계입니다.
clock
null
경우 모든 애니메이션이 지정된 속성에서 제거되지만 중지되지는 않습니다.
구현
설명
이 메서드를 사용하여 속성에서 클록을 제거해도 해당 클록은 중지되지 않습니다.
적용 대상
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)
지정된 DependencyPropertyAnimationClock 적용합니다. 속성에 이미 애니메이션이 적용된 경우 지정된 HandoffBehavior 사용됩니다.
public:
virtual void ApplyAnimationClock(System::Windows::DependencyProperty ^ dp, System::Windows::Media::Animation::AnimationClock ^ clock, System::Windows::Media::Animation::HandoffBehavior handoffBehavior);
public void ApplyAnimationClock (System.Windows.DependencyProperty dp, System.Windows.Media.Animation.AnimationClock clock, System.Windows.Media.Animation.HandoffBehavior handoffBehavior);
abstract member ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock * System.Windows.Media.Animation.HandoffBehavior -> unit
override this.ApplyAnimationClock : System.Windows.DependencyProperty * System.Windows.Media.Animation.AnimationClock * System.Windows.Media.Animation.HandoffBehavior -> unit
Public Sub ApplyAnimationClock (dp As DependencyProperty, clock As AnimationClock, handoffBehavior As HandoffBehavior)
매개 변수
애니메이션 효과를 주려는 속성입니다.
- clock
- AnimationClock
지정된 속성에 애니메이션 효과를 적용할 시계입니다.
handoffBehavior
SnapshotAndReplace
clock
null
경우 모든 애니메이션이 지정된 속성에서 제거되지만 중지되지는 않습니다.
handoffBehavior
Compose 클록이 null
경우 이 메서드는 아무런 영향을 주지 않습니다.
- handoffBehavior
- HandoffBehavior
새 애니메이션이 속성 값에 이미 영향을 주는 현재 애니메이션과 상호 작용하는 방법을 지정하는 값입니다.
구현
예제
다음 예제에서는 다른 HandoffBehavior 설정을 사용하여 애니메이션 클록을 적용하는 방법을 보여 줍니다.
설명
이 메서드를 사용하여 속성에서 클록을 제거해도 해당 클록은 중지되지 않습니다.
Compose HandoffBehavior 사용
Compose HandoffBehavior사용하여 속성에 Storyboard, AnimationTimeline또는 AnimationClock 적용하면 이전에 해당 속성과 연결된 모든 Clock 개체는 시스템 리소스를 계속 사용합니다. 타이밍 시스템은 이러한 클록을 자동으로 제거하지 않습니다.
Compose사용하여 많은 수의 클록을 적용할 때 성능 문제를 방지하려면 완료된 후 애니메이션 속성에서 작성 클록을 제거해야 합니다. 클록을 제거하는 방법에는 여러 가지가 있습니다.
속성에서 모든 클록을 제거하려면 애니메이션 개체의 ApplyAnimationClock(DependencyProperty, AnimationClock) 또는 BeginAnimation(DependencyProperty, AnimationTimeline) 메서드를 사용합니다. 애니메이션 효과를 적용할 속성을 첫 번째 매개 변수로 지정하고 두 번째 매개 변수로
null
. 이렇게 하면 속성에서 모든 애니메이션 시계가 제거됩니다.시계 목록에서 특정 AnimationClock 제거하려면 AnimationClockController 속성을 사용하여 ClockController검색한 다음 ClockControllerRemove 메서드를 호출합니다. 이 작업은 일반적으로 클록에 대한 Completed 이벤트 처리기에서 수행됩니다. 루트 클록만 ClockController의해 제어할 수 있습니다. 자식 시계의 Controller 속성은
null
반환합니다. 또한 클록의 유효 기간이 영원히 지속되면 Completed 이벤트가 호출되지 않습니다. 이 경우 사용자는 Remove호출할 시기를 결정해야 합니다.
이는 주로 수명이 긴 개체의 애니메이션에 대한 문제입니다. 개체가 가비지 수집되면 시계의 연결이 끊어지고 가비지도 수집됩니다.
클록 개체에 대한 자세한 내용은 애니메이션 및 타이밍 시스템 개요참조하세요.
적용 대상
.NET