Solución:
Si cargó el recurso con la interfaz de usuario de Visual Studio, debería poder hacer esto:
picturebox.Image = project.Properties.Resources.imgfromresource
Ken tiene la solución correcta, pero no desea agregar el método de miembro picturebox.Image.Load ().
Si lo hace con una carga y la ubicación de la imagen no está configurada, fallará con una excepción “La ubicación de la imagen debe establecerse”. Si usa el método de miembro picturebox.Refresh (), funciona sin excepción.
Código completo a continuación:
public void showAnimatedPictureBox(PictureBox thePicture)
{
thePicture.Image = Properties.Resources.hamster;
thePicture.Refresh();
thePicture.Visible = true;
}
Se invoca como: showAnimatedPictureBox (myPictureBox);
Mi XAML se ve así:
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:wfi="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"
xmlns:winForms="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" x:Class="myApp.MainWindow"
Title="myApp" Height="679.079" Width="986">
<StackPanel Width="136" Height="Auto" Background="WhiteSmoke" x:Name="statusPanel">
<wfi:WindowsFormsHost>
<winForms:PictureBox x:Name="myPictureBox">
</winForms:PictureBox>
</wfi:WindowsFormsHost>
<Label x:Name="myLabel" Content="myLabel" Margin="10,3,10,5" FontSize="20" FontWeight="Bold" Visibility="Hidden"/>
</StackPanel>
</Window>
Me doy cuenta de que esta es una publicación antigua, pero cargar la imagen directamente desde un recurso no estaba muy claro en el sitio de Microsoft, y esta fue la solución (parcial) a la que llegué. ¡Espero que ayude a alguien!
Ok … entonces primero necesitas importar en tu proyecto la imagen
1) Seleccione el cuadro de imagen en Diseño de formulario
2) Abrir tareas de PictureBox (es la pequeña flecha fijada a la derecha en el borde de la caja de imágenes)
3) Haga clic en “Elegir imagen …”
4) Seleccione la segunda opción “Archivo de recursos del proyecto:” (esta opción creará una carpeta llamada “Recursos” a la que puede acceder con Propiedades.Recursos)
5) Haga clic en importar y seleccione su imagen de su computadora (ahora se enviará una copia de la imagen con el mismo nombre que la imagen en la carpeta Recursos creada en el paso 4)
6) Haga clic en Aceptar
Ahora la imagen está en su proyecto y puede usarla con el comando Propiedades, simplemente escriba este código cuando desee cambiar la imagen de cuadro de imagen:
pictureBox1.Image = Properties.Resources.myimage;
Nota: myimage representa el nombre de la imagen … después de escribir el punto después de Recursos, en sus opciones será su archivo de imagen importado