Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do you set CacheMode on an element programmatically?

Silverlight 3 introduced the CacheMode parameter on elements. Currently the only supported format is BitmapCache. In XAML this value can set as the following:

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

I would like to do the same thing at runtime but have failed so far, neither of the following examples work

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

I'm looking for someone to provide code or workaround for dynamically creating an element (e.g. Image) and setting its CacheMode to BitmapCache.

like image 664
Gergely Orosz Avatar asked Oct 21 '09 10:10

Gergely Orosz


1 Answers

I don't think the property value of CacheMode is an enum, I think its an abstract class.

So you should have something like:

image.CacheMode = new BitmapCache();

There might even be a static instance of BitmapCache somewhere (like on CacheMode).

And yes, having an abstract class called ~Mode is a bit weird imo ;)

like image 126
meandmycode Avatar answered Oct 23 '22 18:10

meandmycode