2009-10-21 8 views
10

Silverlight 3 führte den Parameter CacheMode für Elemente ein. Derzeit wird nur das Format BitmapCache unterstützt. In XAML kann dieser Wert festgelegt, wie die folgenden:Wie legen Sie CacheMode programmatisch auf ein Element fest?

<Image CacheMode="BitmapCache" Source="MyImage.png"></Image> 

Ich möchte die gleiche Sache zur Laufzeit tun, aber bisher nicht gelungen, weder der folgenden Beispiele arbeiten

Image image; 
image.CacheMode = ?? // Could not find any enum to set it to 
image.CacheMode.SetValue(CacheModeProperty, "BitmapCache"); // Does not work 

Ich bin auf der Suche für jemanden, der einen Code oder eine Problemumgehung für das dynamische Erstellen eines Elements bereitstellt (z. B. Image) und CacheMode auf BitmapCache setzt.

Antwort

12

Ich glaube nicht, dass der Eigenschaftswert von CacheMode ein Enum ist, ich denke, es ist eine abstrakte Klasse.

Also sollten Sie etwas wie:

image.CacheMode = new BitmapCache(); 

Es könnte sogar eine statische Instanz von BitmapCache irgendwo sein (wie auf Cachemode).

Und ja, rief eine abstrakte Klasse mit ~ Modus ist ein bisschen komisch imo;)

+0

Ja, das ist es, was wahrscheinlich hat mich verwirrt, danke! –

Verwandte Themen