Changer L'image de PictureBox en image à partir de mes ressources?

comment configurer une image PictureBox à une image à partir de mes ressources?

(j'ai essayé sans succès: pictuerbox.Image = "img_location";)

21
demandé sur MasterMastic 2011-07-03 03:14:47

6 réponses

si vous avez chargé la ressource en utilisant l'interface utilisateur de visual studio, alors vous devriez pouvoir le faire:

picturebox.Image = project.Properties.Resources.imgfromresource
56
répondu Ken Wayne VanderLinde 2011-07-02 23:21:55

Ken A la bonne solution, mais vous ne voulez pas ajouter la picturebox.Image.Load () méthode de l'élément.

si vous le faites avec une charge et que L'ImageLocation n'est pas définie, elle échouera avec une exception "Image Location must be set". Si vous utilisez la picturebox.Refresh() la méthode de membre, il fonctionne sans exception.

Code complété ci-dessous:

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

il est invoqué comme: showAnimatedPictureBox (myPictureBox );

mon apparence XAML comme:

    <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>

je me rends compte que c'est un vieux post, mais charger l'image directement à partir d'une ressource est était extrêmement imprécis sur le site de Microsoft, et c'était la solution (partielle) je suis venu à. Espérons que cela aide quelqu'un!

8
répondu Phorkus Maximus 2013-12-05 22:11:39

Ok...donc d'abord vous devez importer dans votre projet l'image

1) Sélectionnez la picturebox dans la conception de la forme

2)Ouvrir le PictureBox Tâches (c'est la petite flèche pointes à droite sur le bord sur la picturebox)

3) Cliquez sur " Choisir l'image..."

4) Sélectionnez la deuxième option " Project resource file: "(cette option créera un dossier appelé" Resources " auquel vous pouvez accéder avec des propriétés.Ressources)

5)Cliquez sur importer et sélectionnez votre image à partir de votre ordinateur (maintenant une copie de l'image avec le même nom que l'image sera envoyée en Ressources dans le dossier créé à l'étape 4)

6) Cliquez sur ok

l'image est dans votre projet et vous pouvez l'utiliser avec la commande Propriétés.Il suffit de taper ce code pour changer l'image de picturebox:

pictureBox1.Image = Properties.Resources.myimage;

Remarque: myimage représentent le nom de l'image...après avoir tapé le point après ressources,dans vos options ce sera votre image importée le fichier

6
répondu Alin Leon 2015-03-20 22:00:37

vous pouvez utiliser un gestionnaire de ressources pour charger l'image.

Voir le lien suivant: http://www.java2s.com/Code/CSharp/Development-Class/Saveandloadimagefromresourcefile.htm

de façon amusante un lien à partir d'un site java... ;)

3
répondu The Evil Greebo 2011-07-02 23:20:40

essayez le code suivant:

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

et de remplacer l'espace de noms avec votre projet d'espace de noms

2
répondu AbdelRahman Shabana 2013-11-06 09:39:12

vous devez spécifier le chemin complet du fichier ressource comme le nom de l'image dans les ressources de votre application, voir l'exemple ci-dessous.

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

dans le chemin assigné à la propriété Image après MyResources spécifiez le nom de la ressource.

mais avant de faire tout ce que vous avez à importer dans la section ressource de votre application à partir d'un fichier image existe ou il peut créer votre propre.

Bye

0
répondu Carmelo La Monica 2011-07-02 23:25:41