¿Cómo puedo establecer un control PictureBox imagen a una imagen de mis recursos?

(Lo probé sin éxito: pictuerbox.Image = "img_location";)

InformationsquelleAutor MasterMastic | 2011-07-02

6 Comentarios

  1. 63

    Si ha cargado el recurso mediante el visual studio interfaz de usuario, entonces usted debería ser capaz de hacer esto:

    picturebox.Image = project.Properties.Resources.imgfromresource
    • +1 – tengo que llamar a pictureBox.Load(); para mostrar la imagen, sólo la asignación de recursos no trabajo
  2. 11

    Ken tiene la solución correcta, pero usted no desea agregar el control picturebox.Imagen.Load() el método de miembro.

    Si lo haces con una Carga y el ImageLocation no está establecido, se producirá un «Ubicación de la Imagen se debe establecer» la excepción. Si utiliza el control picturebox.Refresh() el método de miembro, funciona sin excepción.

    Completado de código siguiente:

    public void showAnimatedPictureBox(PictureBox thePicture)
    {
                thePicture.Image = Properties.Resources.hamster;
                thePicture.Refresh();
                thePicture.Visible = true;
    }

    Se invoca como:
    showAnimatedPictureBox( myPictureBox );

    Mi XAML parece:

        <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 este es un viejo post, pero al cargar la imagen directamente desde un recurso que se fue muy claro en el sitio de Microsoft, y este fue el (parcial) de la solución me llegó. Espero que ayude a alguien!

    • Siempre que sea posible utilizar thePicture.Invalidate() en lugar de Actualizar(). Esto permite que la aplicación para dibujar, cuando se piensa que su tiempo para dibujar. El Refresh() obliga a dibujar inmediatamente que no suele ser la mejor para el rendimiento…
  3. 6

    …Bueno, en primer lugar usted necesita para importar en el proyecto la imagen

    1)Seleccione el cuadro de imagen en el Diseño del Formulario

    2)Abrir PictureBox Tareas (es la pequeña flecha pinted a la derecha en el borde en el cuadro de imagen)

    3)haga Clic en «seleccionar imagen…»

    4)Seleccionar la segunda opción «Proyecto de recursos de archivo:» (esta opción creará una carpeta llamada «Recursos» a los que usted puede acceder con Propiedades.Recursos)

    5)haga Clic en importar y seleccione la imagen de su equipo (ahora una copia de la imagen con el mismo nombre que la imagen se envía en la carpeta de Recursos creado en el paso 4)

    6)haga Clic en aceptar

    Ahora la imagen está en el proyecto y se puede utilizar con el comando Propiedades.Simplemente escriba este código cuando se desea cambiar la imagen de picturebox:

    pictureBox1.Image = Properties.Resources.myimage;

    Nota: myimage representar el nombre de la imagen…después de escribir el punto después de los Recursos,en sus opciones será su importados archivo de imagen

    • Usted! Usted! Eres bueno! Usted tiene un regalo de mi amigo!
  4. 2

    tratar el siguiente:

     myPictureBox.Image = global::mynamespace.Properties.Resources.photo1;

    y reemplazar el espacio de nombres con su proyecto de espacio de nombres

  5. 0

    Debe especificar la ruta de acceso completa del archivo de recursos como el nombre de la imagen » dentro de los recursos de la aplicación, vea el ejemplo de abajo.

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        PictureBox1.Image = My.Resources.Chrysanthemum
    End Sub

    En la ruta de acceso asignado a la Imagen de la propiedad después de MyResources especificar el nombre de los recursos.

    Pero antes de hacer lo que te tiene que importar en la sección de recursos de la aplicación desde un archivo de imagen que existe o puede crear su propio.

    Bye

Dejar respuesta

Please enter your comment!
Please enter your name here