다음을 통해 공유


BitmapCache 클래스

정의

UIElement의 비트맵 표현을 만들어 캐시합니다.

public ref class BitmapCache sealed : System::Windows::Media::CacheMode
public sealed class BitmapCache : System.Windows.Media.CacheMode
type BitmapCache = class
    inherit CacheMode
Public NotInheritable Class BitmapCache
Inherits CacheMode
상속

예제

다음 XAML은 캐시 하는 방법을 Canvas 요소입니다. 전체 코드 예제를 보려면 방법: 요소를 캐시 하 여 렌더링 성능 향상합니다.

<!-- //////////////////////////////////////////////////////////////// -->
<!-- // The following XAML creates a BitmapCache with default      // -->
<!-- // properties and assigns it as the CacheMode for the canvas. // -->
<!-- //////////////////////////////////////////////////////////////// -->
<Canvas.CacheMode>
    <BitmapCache EnableClearType="False" 
                 RenderAtScale="1" 
                 SnapsToDevicePixels="False"  />
</Canvas.CacheMode>

설명

사용 된 BitmapCache 복잡 한의 렌더링 성능을 개선 하기 위해 클래스 UIElement합니다. 만들기를 BitmapCache 에 할당 합니다 CacheMode 의 속성을 UIElement 비디오 메모리의 비트맵으로 요소 및 해당 하위 트리를 캐시 하 합니다. 애니메이션, 변환 또는 크기를 조정 해야 하는 경우에 유용는 UIElement 최대한 신속 하 게 합니다. 이 이렇게는 콘텐츠가 캐시 되는 동안 시각적 품질 및 성능 절충을 수 있습니다.

사용 하 여는 BitmapCacheBrush 클래스를 효율적으로 캐시 된 요소를 다시 사용 합니다.

설정 된 RenderAtScale 속성 비트맵 캐시 크기를 조정 합니다. 이 요소 확대/축소 및 캐시 요소의 기본 해상도에서 간단히 생성 된 경우 보다 더 명확 하 게 렌더링 요소를 원하는 경우에 유용 합니다.

설정 된 SnapsToDevicePixels 속성 캐시 ClearType 텍스트와 같이 올바르게 렌더링 하려면 픽셀 맞춤을 필요로 하는 콘텐츠를 표시 하는 경우. 이 속성은 무시 합니다 BitmapCacheBrushViewport2DVisual3D 클래스입니다.

캐싱 컨트롤 위로 마우스를 가져가면 동작 영향을 주지 않습니다 비트맵 것 처럼 작동 하므로 위로 마우스를 가져가면 적중 테스트, 실시간 제어.

캐시를 다시 생성에만 발생 경우의 구조를 UIElement 또는 해당 하위 트리를 변경 하거나 때나는 CacheMode 설정 변경 합니다. 설정 된 RenderAtScale 또는 EnableClearType 속성 하면 캐시가 다시 생성 합니다. 캐시 된 부모 시각적 트리에 변경 UIElement등 변환, 확장, 불투명도 및 영향을 캐시에 영향을 주지 않습니다.

하드웨어 가속을 사용할 수 없을 때 캐시 함수입니다. 이 경우 소프트웨어에서 비트맵 렌더링 되는 최대 비트맵 크기는 2048x2048 하며

참고

RenderOptionsTextOptions 캐시 된 요소를 통해 전파 되지 않습니다. 캐시 아래 자식 요소에서 이러한 옵션을 다시 설정 해야 합니다.

생성자

BitmapCache()

BitmapCache 클래스의 새 인스턴스를 초기화합니다.

BitmapCache(Double)

지정된 배율을 사용하여 BitmapCache 클래스의 새 인스턴스를 초기화합니다.

필드

EnableClearTypeProperty

EnableClearType 종속성 속성을 나타냅니다.

RenderAtScaleProperty

RenderAtScale 종속성 속성을 나타냅니다.

SnapsToDevicePixelsProperty

SnapsToDevicePixels 종속성 속성을 나타냅니다.

속성

CanFreeze

개체를 수정 불가능으로 설정할 수 있는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 Freezable)
DependencyObjectType

DependencyObjectType 이 instance CLR 형식을 래핑하는 을 가져옵니다.

(다음에서 상속됨 DependencyObject)
Dispatcher

Dispatcher와 연결된 DispatcherObject를 가져옵니다.

(다음에서 상속됨 DispatcherObject)
EnableClearType

비트맵이 ClearType을 활성화한 상태로 렌더링되는지 여부를 나타내는 값을 가져오거나 설정합니다.

HasAnimatedProperties

하나 이상의 AnimationClock 개체가 이 개체의 종속성 속성과 연결되어 있는지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 Animatable)
IsFrozen

개체가 현재 수정 가능한지 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 Freezable)
IsSealed

이 인스턴스가 현재 봉인되어 있는지(읽기 전용인지) 여부를 나타내는 값을 가져옵니다.

(다음에서 상속됨 DependencyObject)
RenderAtScale

비트맵에 적용되는 배율을 나타내는 값을 가져오거나 설정합니다.

SnapsToDevicePixels

비트맵이 픽셀 맞추기를 사용하여 렌더링되는지 여부를 나타내는 값을 가져오거나 설정합니다.

메서드

ApplyAnimationClock(DependencyProperty, AnimationClock)

지정된 DependencyPropertyAnimationClock을 적용합니다. 속성에 이미 애니메이션 효과가 적용되어 있으면 SnapshotAndReplace 전달 동작이 사용됩니다.

(다음에서 상속됨 Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

지정된 DependencyPropertyAnimationClock을 적용합니다. 속성에 이미 애니메이션이 적용되어 있으면 지정된 HandoffBehavior가 사용됩니다.

(다음에서 상속됨 Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

지정된 DependencyProperty에 애니메이션을 적용합니다. 애니메이션은 다음 프레임을 렌더링할 때 시작됩니다. 지정된 속성에 이미 애니메이션 효과가 적용되어 있으면 SnapshotAndReplace 전달 동작이 사용됩니다.

(다음에서 상속됨 Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

지정된 DependencyProperty에 애니메이션을 적용합니다. 애니메이션은 다음 프레임을 렌더링할 때 시작됩니다. 지정된 속성에 이미 애니메이션이 적용되어 있으면 지정된 HandoffBehavior가 사용됩니다.

(다음에서 상속됨 Animatable)
CheckAccess()

호출 스레드가 이 DispatcherObject에 액세스할 수 있는지 여부를 확인합니다.

(다음에서 상속됨 DispatcherObject)
ClearValue(DependencyProperty)

속성의 로컬 값을 지웁니다. 지울 속성이 DependencyProperty 식별자에서 지정됩니다.

(다음에서 상속됨 DependencyObject)
ClearValue(DependencyPropertyKey)

읽기 전용 속성의 로컬 값을 지웁니다. 선언할 속성이 DependencyPropertyKey에서 지정됩니다.

(다음에서 상속됨 DependencyObject)
Clone()

개체 값의 전체 복사본을 만들어 BitmapCache의 수정 가능한 복제본을 만듭니다. 개체의 종속성 속성을 복사하는 경우 이 메서드는 더 이상 확인되지 않을 수도 있는 식을 복사하지만 애니메이션 또는 해당 현재 값은 복사하지 않습니다.

CloneCore(Freezable)

기본(애니메이션이 적용되지 않은) 속성 값을 사용하여 인스턴스를 지정된 Freezable의 복제본(전체 복사본)으로 만듭니다.

(다음에서 상속됨 Freezable)
CloneCurrentValue()

현재 값을 사용하여 BitmapCache의 수정 가능한 복제본(전체 복사본)을 만듭니다.

CloneCurrentValueCore(Freezable)

현재 속성 값을 사용하여 이 인스턴스를 지정된 Freezable의 수정 가능한 클론(전체 복사본)으로 만듭니다.

(다음에서 상속됨 Freezable)
CoerceValue(DependencyProperty)

지정된 종속성 속성의 값을 강제 변환합니다. 호출하는 DependencyObject에 있으므로 이 작업은 종속성 속성의 속성 메타데이터에 지정된 CoerceValueCallback 함수를 호출하여 수행합니다.

(다음에서 상속됨 DependencyObject)
CreateInstance()

Freezable 클래스의 새 인스턴스를 초기화합니다.

(다음에서 상속됨 Freezable)
CreateInstanceCore()

파생 클래스에서 구현되는 경우 Freezable 파생 클래스의 새 인스턴스를 만듭니다.

(다음에서 상속됨 Freezable)
Equals(Object)

제공된 DependencyObject가 현재 DependencyObject에 해당하는지 여부를 확인합니다.

(다음에서 상속됨 DependencyObject)
Freeze()

현재 개체를 수정할 수 없게 설정하고 해당 IsFrozen 속성을 true로 설정합니다.

(다음에서 상속됨 Freezable)
FreezeCore(Boolean)

Animatable 개체를 수정할 수 없게 만들거나, 수정할 수 없게 만들 수 있는지 확인합니다.

(다음에서 상속됨 Animatable)
GetAnimationBaseValue(DependencyProperty)

지정된 DependencyProperty의 애니메이션이 적용되지 않은 값을 반환합니다.

(다음에서 상속됨 Animatable)
GetAsFrozen()

애니메이션이 적용되지 않은 기준 속성 값을 사용하여 Freezable의 고정된 복사본을 만듭니다. 복사본이 고정되므로 고정된 하위 개체는 모두 참조를 통해 복사됩니다.

(다음에서 상속됨 Freezable)
GetAsFrozenCore(Freezable)

기본(애니메이션이 적용되지 않은) 속성 값을 사용하여 인스턴스를 지정된 Freezable의 고정된 복제본으로 만듭니다.

(다음에서 상속됨 Freezable)
GetCurrentValueAsFrozen()

현재 속성 값을 사용하여 Freezable의 고정된 복사본을 만듭니다. 복사본이 고정되므로 고정된 하위 개체는 모두 참조를 통해 복사됩니다.

(다음에서 상속됨 Freezable)
GetCurrentValueAsFrozenCore(Freezable)

현재 인스턴스를 지정된 Freezable의 고정 클론으로 만듭니다. 개체에 애니메이션 효과를 준 종속성 속성이 있는 경우 애니메이션 효과를 준 현재 값이 복사됩니다.

(다음에서 상속됨 Freezable)
GetHashCode()

DependencyObject의 해시 코드를 가져옵니다.

(다음에서 상속됨 DependencyObject)
GetLocalValueEnumerator()

DependencyObject에 대해 로컬로 값을 설정한 종속성 속성을 확인하기 위한 특수 열거자를 만듭니다.

(다음에서 상속됨 DependencyObject)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
GetValue(DependencyProperty)

DependencyObject의 인스턴스에서 종속성 속성의 현재 유효 값을 반환합니다.

(다음에서 상속됨 DependencyObject)
InvalidateProperty(DependencyProperty)

지정된 종속성 속성의 유효 값을 다시 계산합니다.

(다음에서 상속됨 DependencyObject)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
OnChanged()

현재 Freezable 개체가 수정될 때 호출됩니다.

(다음에서 상속됨 Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

방금 설정된 DependencyObjectType 데이터 멤버에 대한 적절한 컨텍스트 포인터를 설정합니다.

(다음에서 상속됨 Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

이 멤버는 WPF(Windows Presentation Foundation) 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.

(다음에서 상속됨 Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

OnPropertyChanged(DependencyPropertyChangedEventArgs)DependencyObject 구현을 재정의하여 Freezable 형식의 변화하는 종속성 속성에 대한 응답으로 Changed 처리기도 호출합니다.

(다음에서 상속됨 Freezable)
ReadLocalValue(DependencyProperty)

종속성 속성의 로컬 값을 반환합니다(있는 경우).

(다음에서 상속됨 DependencyObject)
ReadPreamble()

유효한 스레드에서 Freezable에 액세스하고 있는지 확인합니다. Freezable 상속자는 종속성 속성이 아닌 데이터 멤버를 읽는 API의 시작 부분에서 이 메서드를 호출해야 합니다.

(다음에서 상속됨 Freezable)
SetCurrentValue(DependencyProperty, Object)

해당 값 소스를 변경하지 않고 종속성 속성의 값을 설정합니다.

(다음에서 상속됨 DependencyObject)
SetValue(DependencyProperty, Object)

지정된 종속성 속성 식별자를 가진 종속성 속성의 로컬 값을 설정합니다.

(다음에서 상속됨 DependencyObject)
SetValue(DependencyPropertyKey, Object)

종속성 속성의 DependencyPropertyKey 식별자에 의해 지정된 읽기 전용 종속성 속성의 로컬 값을 설정합니다.

(다음에서 상속됨 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

serialization 프로세스에서 지정된 종속성 속성의 값을 직렬화해야 하는지 여부를 나타내는 값을 반환합니다.

(다음에서 상속됨 DependencyObject)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
VerifyAccess()

호출 스레드에서 이 DispatcherObject에 액세스할 수 있는지 확인합니다.

(다음에서 상속됨 DispatcherObject)
WritePostscript()

Changed 에 대한 Freezable 이벤트를 발생시키고 해당 OnChanged() 메서드를 호출합니다. Freezable에서 파생된 클래스는 종속성 속성으로 저장되지 않은 클래스 멤버를 수정하는 모든 API의 끝에서 이 메서드를 호출해야 합니다.

(다음에서 상속됨 Freezable)
WritePreamble()

Freezable이 고정되어 있지 않고 유효한 스레드 컨텍스트에서 액세스되고 있는지 확인합니다. Freezable 상속자는 종속성 속성이 아닌 데이터 멤버에 쓰는 API의 시작 부분에서 이 메서드를 호출해야 합니다.

(다음에서 상속됨 Freezable)

이벤트

Changed

Freezable 또는 여기에 들어 있는 개체가 수정될 때 발생합니다.

(다음에서 상속됨 Freezable)

적용 대상

추가 정보