Icono de configuración para la aplicación wpf (VS 08)

125

Antes de ir mucho más lejos, mencionaré que he probado soluciones a continuación:

¿Cómo configuro el icono para mi aplicación en Visual Studio 2008?

Establecer el icono de la aplicación a partir de recursos en VS 05

Estoy tratando de configurar un icono para mi aplicación.

AFAIK, necesito potencialmente 3 imágenes?

  • 1 imagen es la imagen real en el explorador al hacer clic en .exe (miniatura para el exe)
  • 1 imagen (pequeña) en la esquina superior izquierda (16 x 16? No del todo seguro)
  • 1 imagen en el dock del menú de inicio, a la izquierda de la aplicación (¿quizás 32x32? De nuevo, no estoy seguro)

Entonces eso está bien.

Ahora he seleccionado un icono. ¿Cómo lo uso en una de las situaciones anteriores?

He intentado agregarlo en recursos, parece que no pasa nada. Después de esa primera solución SO,

"Primero vaya a la Vista de recursos (desde el menú: Ver -> Otra ventana -> Vista de recursos). Luego, en la Vista de recursos, navegue a través de los recursos, si los hay. Si ya hay un recurso de tipo Icono, agregado por Visual Studio, entonces ábralo y edítelo. De lo contrario, haga clic con el botón derecho y seleccione Agregar recurso, y luego agregue un nuevo icono ".

La vista de recursos está vacía, y no puedo hacer clic derecho en esta vista.

Si hago clic derecho en la solución> propiedades> recursos> puedo agregar la imagen del icono, pero no se muestra en ninguna de las ubicaciones enumeradas anteriormente. (o en cualquier lugar que pueda ver)

1) ¿Cómo configuro el ícono de la aplicación para una aplicación WPF?

barón
fuente
En realidad eso es Win 7 Talk; XP solo tenemos dos, creo? el 16 x 16 y la miniatura grande para el exe (tamaño no seguro)
barón
Para cualquier persona interesada, configuré un ícono, la imagen era de 64 x 64 y todo lo demás (los tamaños más pequeños) se hicieron automáticamente al escalar la imagen original que proporcioné.
barón
Echa un vistazo a esta pregunta en SuperUser superuser.com/questions/142731/… para obtener fácilmente íconos de Windows integrados en tu aplicación.
Chris Marisic
Esto fue útil: rw-designer.com/image-to-icon
Andrew

Respuestas:

163

Suponiendo que use VS Express y C #. El icono se establece en la página de propiedades del proyecto. Para abrirlo, haga clic derecho en el nombre del proyecto en el explorador de soluciones. en la página que se abre, hay una pestaña Aplicación, en esta pestaña puedes configurar el ícono.

742
fuente
2
Gracias por su respuesta ... todo lo demás que he encontrado explica los errores en los recursos, pero el seguimiento de los recursos de su solución se dejó completamente solo y solo configúrelo en la pestaña Aplicación. Saludos
barón
61
Si. Esto funcionó para mí. Sin embargo, parece que cuando se ejecuta la aplicación desde el depurador VS (es decir, presionando F5), el ícono 'genérico' aún se muestra. Sin embargo, ejecutar sin el depurador (es decir, ctrl + f5, o desde el escritorio, etc.) muestra el icono personalizado, como se esperaba.
Tom
77
Esto se debe a que, cuando el depurador ejecuta su código, usa la versión vshost.exe de su compilación (para ayudar a la depuración) que usa el ícono predeterminado de la aplicación y NO el ícono establecido en la pestaña de aplicaciones, ya que está configurado para yourapplication.exe
VisualBean
95

La respuesta de @ 742 funciona bastante bien, pero como se describe en los comentarios cuando se ejecuta desde el depurador VS, el ícono genérico aún se muestra.

Si desea tener su icono incluso cuando presiona F5, puede agregar en la Ventana principal:

<Window x:Class="myClass"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Icon="./Resources/Icon/myIcon.png">

donde se indique la ruta a su icono (el icono puede ser *.png, *.ico.)

(Tenga en cuenta que aún deberá configurar el icono de la aplicación o seguirá siendo el predeterminado en el Explorador).

astreal
fuente
8
Configurar ambos es bueno porque parece ser necesario que el icono aparezca tanto en la ventana como en el archivo EXE.
Vimes
3
Solo asegúrese de establecer el icono en una acción de compilación de "Recurso" como @AdamDylla dijo: stackoverflow.com/a/39897641/1703887
csrowell
4

Nota: (reemplace file.ico con su nombre de archivo de icono real)

  1. Agregue el icono al proyecto con la acción de compilación de "Recurso".
  2. En las Propiedades del proyecto, establezca el Icono de la aplicación en file.ico
  3. En el conjunto de XAML de la ventana principal: Icon=".\file.ico"en la ventana
Adam Dylla
fuente
3

Después de obtener una XamlParseException con el mensaje: 'Proporcione valor en' System.Windows.Baml2006.TypeConverterMarkupExtension ' con las soluciones dadas, configurar el icono me funcionó programáticamente. Así es como lo hice:

  1. Coloque el icono en una carpeta < icon_path > en el directorio del proyecto
  2. Imita la ruta de la carpeta < icon_path > en la solución
  3. Agregue un nuevo elemento (su icono) en la carpeta de la solución que creó
  4. Agregue el siguiente código en el código de la ventana WPF detrás:

Icon = new BitmapImage (new Uri ("< icon_path >", UriKind.Relative));

Infórmeme si tiene dificultades para implementar esta solución para que pueda ayudarlo.

Marvin Thobejane
fuente
La solución fácil para este mensaje de error es establecer el icono en una acción de compilación de "Recurso" como dijo @AdamDylla: stackoverflow.com/a/39897641/1703887
csrowell
0

Puedes probar esto también:

private void Page_Loaded_1(object sender, RoutedEventArgs e)
    {
        Uri iconUri = new Uri(@"C:\Apps\R&D\WPFNavigation\WPFNavigation\Images\airport.ico", UriKind.RelativeOrAbsolute);
        (this.Parent as Window).Icon = BitmapFrame.Create(iconUri);
    }
Nadeem Shaikh
fuente