none
Cómo se incluye mi imagen Background en resultado final (.exe) RRS feed

  • Pregunta

  • Buen día a todos los amigos del Foro. Tengo una imagen de Background en una ventana, pero la carpeta Resource con el archivo .jpg debo trasportarlo con el .exe para que no me genere error al correrlo. ¿Cómo hago para que el .jpg sea incluído en la solución final y sólo transporte el .exe ?

    Ubiqué mi imagen así:

    <Window.Background >

            <ImageBrush ImageSource="Resources/Logo.jpg"/>

    </Window.Background >

    En las propiedades del recurso Logo.jpg, ubiqué así:

    Acción de compilación: Contenido

    Copiar en el directorio de resultados: Copiar Siempre

    Leí que para incrustar archivos de recursos en la solución final, en Acción de compilación se ubica Recurso Incrustado, pero al ejecutar con el depurador genera una excepción. ¿Cómo debo de hacer? 

    Gracias por su ayuda.

    viernes, 17 de julio de 2015 13:43

Todas las respuestas

  • hola

    podrias embeber la imagen como resource del proyecto

    imagen

    le cambias el Build Action

    Empaquetar URI en WPF

    lo puedes referenciar usando una uri como se explica en el articulo

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Propuesto como respuesta Sergio Parra viernes, 17 de julio de 2015 14:49
    viernes, 17 de julio de 2015 14:04
  • Gracias Leandro por tu aporte. Voy a estudiar lo que me dejaste, me pareció interesante. Por el momento te cuento que logré encontrar la respuesta y el compañero Kenlly Acosta también me pasó la misma respuesta y me funciona 100%. Detallo aquí el procedimiento, para ayudar a quienes tengan la misma duda:

    1. En el explorador de soluciones, en la solución doy Click Derecho, elijo la opción: Agregar/Elemento existente... y busco el archivo de imagen y agrego.

    2. En las propiedades del archivo, donde dice Acción de compilación, automáticamente aparece Resource, de no ser hay que ubicarlo. En la segunda propiedad Copiar en el directorio de resultados, debe aparecer No copiar, si no, hay que ubicarlo.

    3. En el código xaml, dentro de el contenedor, por ejemplo Border, se hace referencia al archivo que ya se trajo a la solución, así:

    <Window.Background >

            <ImageBrush ImageSource="Logo.jpg"/>

    </Window.Background >

    Muestro la ventana maximizada y la hago transparente con la propiedad AllowsTransparency="True"  y listo, la imagen de Background ocupa toda la pantalla. Le diseñé una barra de título y unos botones de maximizar y minimizar a mi gusto, y el único problema que se me presenta ahora, es que casi la mitad de la barra de título y los botones, no aparecen, es como si los primeros pixeles de la parte de arriba de la imagen quedaron más arriba de la pantalla... y no se como solucionar esto, porque quiero el Background ocupando toda la pantalla. Te agradezco si me ayudan con esto. Gracias.

    domingo, 19 de julio de 2015 20:42