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?
Respuesta
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.
Si desea una copia de los recursos a ser cargado, utilice SharedResourceDictionary de Christian Moser en http://www.wpftutorial.net/MergedDictionaryPerformance.html
- 1. Accediendo ResourceDictionary desde WPF UserControl
- 2. Mezclando estilos generales de WPF con ResourceDictionary
- 3. Enlazando a antepasados dentro de un ResourceDictionary
- 4. Las imágenes centradas son borrosas
- 5. Las imágenes en XAML ResourceDictionary desaparecen en la barra de herramientas cuando se abre el menú
- 6. ¿Cuál es el alcance de StaticResource dentro de un WPF ResourceDictionary?
- 7. Procesamiento de imágenes: ¿Qué son las oclusiones?
- 8. ¿Las clases de singleton son seguras para subprocesos en IIS?
- 9. WPF Galería de imágenes
- 10. ¿Funcionan las excepciones singleton?
- 11. WPF MVVM: Convención sobre la configuración para ResourceDictionary?
- 12. ¿Todas las imágenes de la tienda son las imágenes base, pequeñas y en miniatura de Magento?
- 13. ¿Cómo importar un ResourceDictionary a otro, en WPF?
- 14. Configuración WindowStartupLocation de ResourceDictionary tiros XamlParseException
- 15. WPF Imágenes contra XAML
- 16. Cómo comprobar si las imágenes son de caché
- 17. ¿Los Singleton son realmente tan malos?
- 18. ¿Cómo centrar verticalmente las imágenes dentro de un elemento LI?
- 19. ¿Dónde se almacenan las imágenes dentro de los programas?
- 20. Mostrar imágenes en TextBlock (WPF)
- 21. ¿Dónde puedo encontrar imágenes prediseñadas de WPF?
- 22. Las imágenes no son nítidas en el TabItem seleccionado
- 23. ¿Son las imágenes png compatibles con varios navegadores?
- 24. Por qué son necesarias las propiedades de automatización en WPF
- 25. Pasar de WPF a Silverlight: ¿Cuáles son las principales diferencias?
- 26. WPF: utilice un recurso ControlTemplate dentro de un estilo
- 27. ResourceDictionary en un ensamblado aparte
- 28. Obtener un recurso de ResourceDictionary con una clave
- 29. ¿Es posible compartir un archivo ResourceDictionary entre varios proyectos?
- 30. ¿Por qué las excepciones no son propagadas por WPF Dispatcher.Invoke?
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