RenderOptions.SetCachingHint(DependencyObject, CachingHint) 메서드

정의

지정된 종속성 개체에 대한 CachingHint 연결된 속성의 값을 설정합니다.Sets the value of the CachingHint attached property on a specified dependency object.

public:
 static void SetCachingHint(System::Windows::DependencyObject ^ target, System::Windows::Media::CachingHint cachingHint);
public static void SetCachingHint (System.Windows.DependencyObject target, System.Windows.Media.CachingHint cachingHint);
static member SetCachingHint : System.Windows.DependencyObject * System.Windows.Media.CachingHint -> unit
Public Shared Sub SetCachingHint (target As DependencyObject, cachingHint As CachingHint)

매개 변수

target
DependencyObject

CachingHint 속성의 값을 설정할 종속성 개체입니다.The dependency object on which to set the value of the CachingHint property.

cachingHint
CachingHint

속성에 설정할 새 값입니다.The new value to set the property to.

예외

지정된 targetnull입니다.The specified target is null.

예제

다음 예제에 대 한 캐싱 힌트 옵션을 사용 하는 방법을 보여 줍니다는 DrawingBrush합니다.The following example shows how to use the caching hint option for a DrawingBrush.

DrawingBrush drawingBrush = new DrawingBrush();
            
// Set the caching hint option for the brush.
RenderOptions.SetCachingHint(drawingBrush, CachingHint.Cache);

// Set the minimum and maximum relative sizes for regenerating the tiled brush.
// The tiled brush will be regenerated and re-cached when its size is
// 0.5x or 2x of the current cached size.
RenderOptions.SetCacheInvalidationThresholdMinimum(drawingBrush, 0.5);
RenderOptions.SetCacheInvalidationThresholdMaximum(drawingBrush, 2.0);
Dim drawingBrush As New DrawingBrush()

' Set the caching hint option for the brush.
RenderOptions.SetCachingHint(drawingBrush, CachingHint.Cache)

' Set the minimum and maximum relative sizes for regenerating the tiled brush.
' The tiled brush will be regenerated and re-cached when its size is
' 0.5x or 2x of the current cached size.
RenderOptions.SetCacheInvalidationThresholdMinimum(drawingBrush, 0.5)
RenderOptions.SetCacheInvalidationThresholdMaximum(drawingBrush, 2.0)

설명

기본적으로 WPF는 및 개체의 렌더링 된 콘텐츠를 캐시 하지 않습니다 DrawingBrush VisualBrush .By default, WPF does not cache the rendered contents of DrawingBrush and VisualBrush objects. 장면에서 브러시의 내용 또는 사용이 변경 되지 않는 정적 시나리오에서 캐싱은 비디오 메모리를 절약 하기 때문에 이점을 제공 하지 않습니다.In static scenarios, where neither the contents nor the use of the brush in the scene is changing, not caching provides a benefit because it conserves video memory. 정적 콘텐츠가 포함 된 브러시를 정적이 지 않은 방식으로 사용 하는 경우 WPF의 기본 동작은 콘텐츠가 변경 되지 않은 경우에도 모든 프레임에 브러시의 모든 콘텐츠를 다시 렌더링 하는 것입니다.When a brush with static content is used in a non-static way, the default behavior of WPF is to re-render all the content of the brush every frame, even though the content is unchanging. 예를 들어,이 동작이 발생 하는 정적 DrawingBrush 또는 VisualBrush 회전 3D 개체 표면에 매핑되어 있습니다.For example, this will happen when a static DrawingBrush or VisualBrush is mapped to the surface of a rotating 3D object. 정적 콘텐츠를 다시 렌더링 성능에 부정적인 영향을 줄이 있습니다.Re-rendering the static content can have a negative impact on performance.

CachingHint브러시의 연결 된 속성을로 설정 하면 Cache 바둑판식 브러시 개체의 캐시 된 버전을 사용 하 여 성능을 향상 시킬 수 있습니다.By setting the CachingHint attached property of the brush to Cache, you can increase performance by using cached versions of the tiled brush objects.

CacheInvalidationThresholdMinimumCacheInvalidationThresholdMaximum 속성 값은 크기 TileBrush 변경으로 인해 개체가 다시 생성 되어야 하는 시기를 결정 하는 상대 크기 값입니다.The CacheInvalidationThresholdMinimum and CacheInvalidationThresholdMaximum property values are relative-size values that determine when the TileBrush object should be regenerated because of changes in scale. 예를 들어 CacheInvalidationThresholdMaximum 속성이 2.0로 설정 된 경우에 대 한 캐시는 TileBrush 크기가 현재 캐시 크기의 2 배를 초과할 때만 다시 생성 해야 합니다.For example, when the CacheInvalidationThresholdMaximum property is set to 2.0, the cache for the TileBrush needs to be regenerated only when its size exceeds two times the size of the current cache.

코드에서 연결 된 속성을 설정 하려면이 메서드를 사용 CachingHint 합니다.Use this method to set the CachingHint attached property in code.

적용 대상

추가 정보