tutorial que español controles c# .net wpf xaml embedded-resource

c# - que - ¿Cómo hacer referencia a los recursos incrustados de XAML?



xaml tutorial (3)

Cuando configura BuildAction en Resource , va como recurso incrustado en un ensamblado. O puede configurar BuildAction en el Contenido y luego se incluirá en el archivo .xap resultante. Puede usar cualquiera de estas BuildActions. Al configurar BuildAction en el Contenido puede acceder a la Imagen como: "/Resources/Images/darkaurora.png" (debe comenzar con la barra inclinada). Y cuando utiliza el recurso BuildAction , puede acceder a la imagen como "/YearBook;component/Resources/Images/darkaurora.png" (assemblyname; component / relativepath). Espero que esto ayude

Tengo varias imágenes que quiero incrustar en el exe.

Cuando configuro la Acción de compilación para el recurso incrustado obtengo un código de error que indica que el recurso no está disponible y me pide que establezca la acción de compilación en el recurso.

Intenté varios métodos diferentes:

<ImageSource x:Key="Image_Background">YearBook;component/Resources/Images/darkaurora.png</ImageSource> <ImageSource x:Key="Image_Background">Images/darkaurora.png</ImageSource> <ImageSource x:Key="Image_Background">pack://application:,,,/Resources/Images/darkaurora.png</ImageSource>

Este código se encuentra en un archivo de recursos. Pero ninguno funcionó, todos arrojaron este error:

Cannot convert the string ''pack://application:,,,/Resources/Images/darkaurora.png'' into a ''System.Windows.Media.ImageSource'' object. Cannot locate resource ''resources/images/darkaurora.png''. Error at object ''Image_Background'' in markup file ''YearBook;component/Resources/ImageResources.xaml'' Line 4 Position 6.

Y en diferentes lugares en el código que obtengo:

the file ''YearBook;component/Resources/Images/shadowdrop.png'' is not a part of the project or its ''Build Action'' property is not set to ''Resource''

Entonces, ¿Qué estoy haciendo mal?


Establezca la acción de compilación en Recurso, no en Recurso incrustado


ImageSource no se puede crear una instancia.

public abstract class ImageSource : Animatable, IFormattable

Ahí está ese pequeño abstract que te arruinará el día. Su xaml está tratando de instanciar una instancia de ImageSource, luego asigne el valor dentro del elemento (su Uri, en este caso) a una propiedad marcada con ContentPropertyAttribute (??) usando cualquier convertidor que pueda ubicarse para convertir la cadena a un objeto (otra vez, ??).

Creo que quieres un BitmapSource .

<BitmapImage x:Key="Image_Background" UriSource="/Images/darkaurora.png" />