c# - studio - Cómo crear y usar recursos en.NET
visual studio code icons (3)
Bueno, después de buscar y juntar varios puntos de todo StackOverflow (ya me encanta este lugar), la mayoría de los problemas ya habían pasado esta etapa. Sí logré encontrar una respuesta a mi problema.
Cómo crear un recurso
En mi caso, quiero crear un icono. Sin embargo, es un proceso similar, sin importar qué tipo de datos desee agregar como recurso.
- Haga clic con el botón derecho en el proyecto al que desea agregar un recurso. Haz esto en el Explorador de soluciones. Seleccione la opción "Propiedades" de la lista.
- Haga clic en la pestaña "Recursos".
- El primer botón en la parte superior de la barra le permitirá seleccionar el tipo de recurso que desea agregar. Debería comenzar en cadena. Queremos agregar un icono, haga clic en él y seleccione "Iconos" de la lista de opciones.
- Luego, vaya al segundo botón, "Agregar recurso". Puede agregar un nuevo recurso, o si ya tiene un ícono ya hecho, puede agregarlo también. Siga las instrucciones para cualquier opción que elija.
- En este punto, puede hacer doble clic en el recurso recién agregado para editarlo. Tenga en cuenta que los recursos también se muestran en el Explorador de soluciones, y hacer doble clic allí es igual de efectivo
Cómo usar un recurso
Genial, entonces tenemos nuestro nuevo recurso y estamos ansiosos de tener esos encantadores íconos cambiantes ... ¿Cómo lo hacemos? Bueno, afortunados, C # lo hace extremadamente fácil.
Hay una clase estática llamada Properties.Resources
que le da acceso a todos sus recursos, por lo que mi código terminó siendo tan simple como:
paused = !paused;
if (paused)
notifyIcon.Icon = Properties.Resources.RedIcon;
else
notifyIcon.Icon = Properties.Resources.GreenIcon;
¡Hecho! Finis! Todo es simple cuando sabes cómo, ¿no?
¿Cómo creo un recurso que pueda referenciar y usar en varias partes de mi programa fácilmente?
Mi problema específico es que tengo un NotifyIcon del que quiero cambiar el ícono dependiendo del estado del programa. Un problema común, pero con el que he estado luchando durante mucho tiempo.
El método anterior funciona bien.
Otro método (supongo que la web aquí) es crear tu página. Agregue controles a la página. Luego, mientras está en modo de diseño, vaya a: Herramientas> Generar recurso local. Un archivo de recursos aparecerá automágicamente en la solución con todos los controles en la página mapeada en el archivo de recursos.
Para crear recursos para otros idiomas, agregue el lenguaje de 4 caracteres al final del nombre del archivo, antes de la extensión (Account.aspx.en-US.resx, Account.aspx.es-ES.resx ... etc.).
Para recuperar entradas específicas en el código subyacente, simplemente llame a este método: GetLocalResourceObject ([resource entry key / name]).
Lo anterior no funcionó realmente para mí como esperaba con Visual Studio 2010. No me dejaba acceder a Properties.Resources, decía que era inaccesible debido a problemas de permisos. Finalmente tuve que cambiar la configuración de Persistencia en las propiedades del recurso y luego encontré cómo acceder a ella a través del archivo Resources.Designer.cs, donde tenía un getter automático que me permitía acceder al icono, a través de MyNamespace.Properties.Resources .NameFromAddingTheResource. Eso devuelve un objeto de tipo Icono, listo para usar.