2011-06-23 5 views
6

WPF ... si agrego una imagen a mi ResourceDictionary y luego uso StaticResource para usarla en varios lugares ... ¿esa imagen tiene solo una instancia? o se crea una nueva instancia de esa imagen cada vez que la uso?Las imágenes WPF dentro de ResourceDictionary son singleton?

+0

que había un problema relacionado con esto, véase [Imágenes en XAML ResourceDictionary desaparecer la barra de herramientas cuando el menú se abre] (http://stackoverflow.com/questions/5597554/images-in-xaml-resourcedictionary-disappear-on-toolbar-when-menu-opens). – user7116

Respuesta

5

Nivel de instancia
En la misma instancia del elemento que sostiene el ResourceDictionary, sí, siempre se toma la misma instancia, siempre que no dicen x:Shared="false".
Para controles e Imágenes, esto será necesario si desea que los use más de una vez. Para ImageSources no. Esto se debe a que un elemento solo puede tener un elemento principal.

Nivel global
Sin embargo, se cargan recursos para cada instancia. Esto significa que si define un recurso en la sección de recursos de un UserControl, por cada instancia de su UserControl se cargará una instancia del recurso. Ponga recursos a menudo usados ​​en la sección Recursos de la aplicación o en la sección Recursos de Windows.

Here encontrarás más información.

Cuestiones relacionadas