Aracılığıyla paylaş


BitmapCache Sınıf

Tanım

bir bit eşlem gösterimini UIElementoluşturur ve önbelleğe alır.

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
Devralma

Örnekler

Aşağıdaki XAML'de bir Canvas öğenin nasıl önbelleğe alınacakları gösterilmektedir. Kod örneğinin tamamı için bkz . Nasıl yapılır: Öğeyi Önbelleğe Alarak İşleme Performansını Geliştirme.

<!-- //////////////////////////////////////////////////////////////// -->
<!-- // 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>

Açıklamalar

Karmaşık UIElementbir BitmapCache işleme performansını geliştirmek için sınıfını kullanın. BitmapCache öğesini ve alt ağacını video belleğinde CacheMode bit eşlem olarak önbelleğe almak için bir oluşturun ve öğesinin özelliğine UIElement atayın. Bu, bir öğesine mümkün olan en kısa sürede animasyon eklemeniz, çevirmeniz veya ölçeklendirmeniz UIElement gerektiğinde kullanışlıdır. Bu yaklaşım, içerik önbelleğe alınırken performans ve görsel kalite arasında denge sağlar.

Önbelleğe BitmapCacheBrush alınmış bir öğeyi verimli bir şekilde yeniden kullanmak için sınıfını kullanın.

Bit eşlem önbelleğini RenderAtScale ölçeklendirmek için özelliğini ayarlayın. Bu, bir öğe yakınlaştırılırsa ve önbellek yalnızca öğenin yerel çözünürlüğünde oluşturulduysa öğenin işlendiğinden daha net bir şekilde işlenmesini istiyorsanız kullanışlıdır.

Önbellekte SnapsToDevicePixels ClearType metni gibi doğru şekilde işlenmesi için piksel hizalaması gerektiren içerik görüntülendiğinde özelliğini ayarlayın. Bu özellik ve Viewport2DVisual3D sınıfları tarafından BitmapCacheBrush yoksayılır.

Bir denetimi önbelleğe almak fare üzerinde çalışma davranışını etkilemez, bu nedenle fare üzerine tıklama testi bit eşlem canlı denetimmiş gibi çalışır.

Önbellek yeniden oluşturma işlemi yalnızca veya alt ağacının UIElement yapısı değiştiğinde veya ayarlar değiştiğinde CacheMode gerçekleşir. RenderAtScale veya EnableClearType özelliklerinin ayarlanması önbellek yeniden oluşturma işlemine neden olur. Önbelleğe alınan UIElementöğesinin üst görsel ağacında yapılan dönüştürmeler, ölçekler, opaklıklar ve efektler gibi değişiklikler önbelleği etkilemez.

Donanım hızlandırma kullanılabilir olmadığında önbellek işlevleri. Bu durumda bit eşlem yazılımda işlenir ve maksimum bit eşlem boyutları 2048 x 2048'dir.

Uyarı

RenderOptions ve TextOptions önbelleğe alınmış bir öğe aracılığıyla yayılmaz. Önbelleğin altındaki alt öğelerde bu seçenekleri yeniden ayarlamanız gerekebilir.

Oluşturucular

Name Description
BitmapCache()

BitmapCache sınıfının yeni bir örneğini başlatır.

BitmapCache(Double)

Belirtilen ölçekle sınıfının yeni bir örneğini BitmapCache başlatır.

Alanlar

Name Description
EnableClearTypeProperty

EnableClearType Bağımlılık özelliğini tanımlar.

RenderAtScaleProperty

RenderAtScale Bağımlılık özelliğini tanımlar.

SnapsToDevicePixelsProperty

SnapsToDevicePixels Bağımlılık özelliğini tanımlar.

Özellikler

Name Description
CanFreeze

Nesnenin değiştirilemez hale getirilip getirilemeyeceğini gösteren bir değer alır.

(Devralındığı yer: Freezable)
DependencyObjectType

DependencyObjectType Bu örneğin CLR türünü sarmalayan öğesini alır.

(Devralındığı yer: DependencyObject)
Dispatcher

Dispatcher Bunun DispatcherObject ilişkili olduğu öğesini alır.

(Devralındığı yer: DispatcherObject)
EnableClearType

Bit eşlemin ClearType etkin olarak işlenip işlenmediğini gösteren bir değer alır veya ayarlar.

HasAnimatedProperties

Bir veya daha fazla AnimationClock nesnenin bu nesnenin bağımlılık özelliklerinden herhangi biriyle ilişkili olup olmadığını gösteren bir değer alır.

(Devralındığı yer: Animatable)
IsFrozen

Nesnenin şu anda değiştirilebilir olup olmadığını gösteren bir değer alır.

(Devralındığı yer: Freezable)
IsSealed

Bu örneğin şu anda korumalı (salt okunur) olup olmadığını gösteren bir değer alır.

(Devralındığı yer: DependencyObject)
RenderAtScale

Bit eşlem uygulanan ölçeği gösteren bir değer alır veya ayarlar.

SnapsToDevicePixels

Bit eşlemin piksel tutturma ile işlenip işlenmediğini gösteren bir değer alır veya ayarlar.

Yöntemler

Name Description
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır.

(Devralındığı yer: Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock)

Belirtilen DependencyPropertyöğesine bir AnimationClock uygular. Özelliği zaten animasyonlu ise, SnapshotAndReplace iletim davranışı kullanılır.

(Devralındığı yer: Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Belirtilen DependencyPropertyöğesine bir animasyon uygular. Animasyon, sonraki çerçeve işlendiğinde başlatılır. Belirtilen özellik zaten animasyonluysa, belirtilen HandoffBehavior kullanılır.

(Devralındığı yer: Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Belirtilen DependencyPropertyöğesine bir animasyon uygular. Animasyon, sonraki çerçeve işlendiğinde başlatılır. Belirtilen özellik zaten animasyonluysa, SnapshotAndReplace iletim davranışı kullanılır.

(Devralındığı yer: Animatable)
CheckAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler.

(Devralındığı yer: DispatcherObject)
ClearValue(DependencyProperty)

Bir özelliğin yerel değerini temizler. Temizlenecek özellik bir DependencyProperty tanımlayıcı tarafından belirtilir.

(Devralındığı yer: DependencyObject)
ClearValue(DependencyPropertyKey)

Salt okunur özelliğin yerel değerini temizler. Temizlenecek özellik tarafından DependencyPropertyKeybelirtilir.

(Devralındığı yer: DependencyObject)
Clone()

nesnesinin değerlerinin BitmapCachederin kopyalarını oluşturan değiştirilebilir bir kopyasını oluşturur. Nesnenin bağımlılık özelliklerini kopyalarken, bu yöntem ifadeleri (artık çözümlenmeyebilir) kopyalar, ancak animasyonları veya geçerli değerlerini kopyalar.

CloneCore(Freezable)

Temel (animasyonsuz) özellik değerlerini kullanarak örneği belirtilenlerin Freezable bir kopyası (derin kopya) yapar.

(Devralındığı yer: Freezable)
CloneCurrentValue()

Geçerli değerlerini kullanarak öğesinin BitmapCache değiştirilebilir bir kopyasını (derin kopya) oluşturur.

CloneCurrentValueCore(Freezable)

Geçerli özellik değerlerini kullanarak örneği belirtilenlerin Freezable değiştirilebilir bir kopyası (derin kopya) yapar.

(Devralındığı yer: Freezable)
CoerceValue(DependencyProperty)

Belirtilen bağımlılık özelliğinin değerini zorlama. Bu, çağrısında CoerceValueCallbackvar olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir DependencyObject işlevi çağırarak gerçekleştirilir.

(Devralındığı yer: DependencyObject)
CreateInstance()

Freezable sınıfının yeni bir örneğini başlatır.

(Devralındığı yer: Freezable)
CreateInstanceCore()

Türetilmiş bir sınıfta uygulandığında, türetilmiş sınıfın Freezable yeni bir örneğini oluşturur.

(Devralındığı yer: Freezable)
Equals(Object)

Sağlanan DependencyObject öğesinin geçerli DependencyObjectile eşdeğer olup olmadığını belirler.

(Devralındığı yer: DependencyObject)
Freeze()

Geçerli nesneyi değiştirilemez hale getirir ve özelliğini olarak trueayarlarIsFrozen.

(Devralındığı yer: Freezable)
FreezeCore(Boolean)

Bu Animatable nesneyi değiştirilemez hale getirir veya değiştirilemez hale getirilip getirilemeyeceğini belirler.

(Devralındığı yer: Animatable)
GetAnimationBaseValue(DependencyProperty)

Belirtilen DependencyPropertyöğesinin animasyonsuz değerini döndürür.

(Devralındığı yer: Animatable)
GetAsFrozen()

temel (animasyonsuz) özellik değerlerini kullanarak donmuş bir kopyasını Freezableoluşturur. Kopya dondurulacağından, dondurulan alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetAsFrozenCore(Freezable)

Temel (animasyonsuz) özellik değerlerini kullanarak örneği belirtilenlerin Freezable donmuş bir kopyası yapar.

(Devralındığı yer: Freezable)
GetCurrentValueAsFrozen()

Geçerli özellik değerlerini kullanarak donmuş Freezable bir kopyasını oluşturur. Kopya dondurulacağından, dondurulan alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Geçerli örneği, belirtilen Freezableöğesinin donmuş bir kopyası yapar. Nesne animasyonlu bağımlılık özelliklerine sahipse, geçerli animasyonlu değerleri kopyalanır.

(Devralındığı yer: Freezable)
GetHashCode()

Bu DependencyObjectiçin bir karma kodu alır.

(Devralındığı yer: DependencyObject)
GetLocalValueEnumerator()

Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özel bir numaralandırıcı oluşturur.

(Devralındığı yer: DependencyObject)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
GetValue(DependencyProperty)

Bir öğesinin bu örneğindeki bir bağımlılık özelliğinin DependencyObjectgeçerli etkin değerini döndürür.

(Devralındığı yer: DependencyObject)
InvalidateProperty(DependencyProperty)

Belirtilen bağımlılık özelliği için geçerli değeri yeniden değerlendirir.

(Devralındığı yer: DependencyObject)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnChanged()

Geçerli Freezable nesne değiştirildiğinde çağrılır.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Bu üye Windows Presentation Foundation (WPF) altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Yeni ayarlanmış bir DependencyObjectType veri üyesi için uygun bağlam işaretçilerinin oluşturulmasını sağlar.

(Devralındığı yer: Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

türündeki DependencyObjectFreezabledeğişen bağımlılık özelliğine yanıt olarak herhangi Changed bir işleyici çağırmak için uygulamasını OnPropertyChanged(DependencyPropertyChangedEventArgs) geçersiz kılar.

(Devralındığı yer: Freezable)
ReadLocalValue(DependencyProperty)

Varsa, bağımlılık özelliğinin yerel değerini döndürür.

(Devralındığı yer: DependencyObject)
ReadPreamble()

Freezable geçerli bir iş parçacığından erişildiğinden emin olur. öğesinin Freezable devralanları, bağımlılık özellikleri olmayan veri üyelerini okuyan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
SetCurrentValue(DependencyProperty, Object)

Bir bağımlılık özelliğinin değerini, değer kaynağını değiştirmeden ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyProperty, Object)

Bağımlılık özelliği tanımlayıcısı tarafından belirtilen bir bağımlılık özelliğinin yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyPropertyKey, Object)

Bağımlılık özelliğinin tanımlayıcısı tarafından belirtilen salt okunur bağımlılık özelliğinin DependencyPropertyKey yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Serileştirme işlemlerinin sağlanan bağımlılık özelliği için değeri serileştirmesi gerekip gerekmediğini gösteren bir değer döndürür.

(Devralındığı yer: DependencyObject)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
VerifyAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişmesini zorlar.

(Devralındığı yer: DispatcherObject)
WritePostscript()

Changed için Freezable olayını oluşturur ve yöntemini çağırırOnChanged(). öğesinden Freezable türetilen sınıflar, bağımlılık özellikleri olarak depolanmayan sınıf üyelerini değiştiren herhangi bir API'nin sonunda bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
WritePreamble()

öğesinin Freezable dondurulmadığını ve geçerli bir iş parçacığı bağlamından erişildiğini doğrular. Freezable devralanların, bağımlılık özellikleri olmayan veri üyelerine yazan herhangi bir API'nin başında bu yöntemi çağırması gerekir.

(Devralındığı yer: Freezable)

Ekinlikler

Name Description
Changed

veya içerdiği bir nesne değiştirildiğinde Freezable gerçekleşir.

(Devralındığı yer: Freezable)

Şunlara uygulanır

Ayrıca bkz.