WPF met en place un MenuItem.Icône en code

j'ai un dossier d'images avec un png. Je voudrais mettre L'icône D'un MenuItem sur ce png. Comment puis-je écrire ceci dans le code de procédure?

32
demandé sur Dave Clemmer 2008-08-27 18:16:08

8 réponses

menutItem.Icon = new System.Windows.Controls.Image 
       { 
           Source = new BitmapImage(new Uri("images/sample.png", UriKind.Relative)) 
       };
54
répondu Timothy Fries 2011-12-02 07:15:10
<MenuItem>
  <MenuItem.Icon>
    <Image>
      <Image.Source>
        <BitmapImage UriSource="/your_assembly;component/your_path_here/Image.png" />
      </Image.Source>
    </Image>
  </MenuItem.Icon>
</MenuItem>

assurez-vous que votre image également inclus dans le fichier de projet et marqué comme ressource, et vous êtes bon pour aller :)

21
répondu Arcturus 2015-07-08 13:17:16

la réponse D'Arcturus est bonne parce que cela signifie que vous avez le fichier image dans votre projet plutôt qu'un dossier indépendant.

donc, en code qui devient...

menutItem.Icon = new Image
        {
        Source = new BitmapImage(new Uri("pack://application:,,,/your_assembly;component/yourpath/Image.png"))
        }
15
répondu IanR 2011-04-27 20:24:31

Voici comment je l'ai utilisé (de cette façon il n'a pas besoin d'être intégré dans l'assemblage):

MenuItem item = new MenuItem();
string imagePath = "D:\Images\Icon.png");
Image icon = new Image();
icon.Source= new BitmapImage(new Uri(imagePath, UriKind.Absolute));
item.Icon = icon;
1
répondu awe 2009-05-20 05:08:25

C'est un peu plus court :D

<MenuItem Header="Example">
   <MenuItem.Icon>
      <Image Source="pack://siteoforigin:,,,/Resources/Example.png"/>
   </MenuItem.Icon>
</MenuItem>
1
répondu Basti Endres 2013-06-25 15:16:22

Pour ceux d'entre vous qui utilisent vb.net pour ce faire, vous devez utiliser cette: menuItem.Icon = New Image() With {.Source = New BitmapImage(New Uri("pack://application:,,,/your_assembly;component/yourpath/Image.png"))}

0
répondu Python Kid 2013-02-09 10:31:38

C'est ce qui a fonctionné pour moi

<MenuItem Header="delete   ctrl-d" Click="cmiDelete_Click">
    <MenuItem.Icon>
        <Image>
            <Image.Source>
                <ImageSource>Resources/Images/delete.png</ImageSource>
            </Image.Source>
        </Image>
    </MenuItem.Icon>
</MenuItem>
0
répondu Gary95054 2013-10-01 16:52:18

vous pouvez également utiliser votre studio visuel pour insérer une icône. C'est le moyen le plus facile

  • clic Droit sur votre projet dans l'explorateur de solutions
  • choisir des propriétés
  • assurez-vous d'être dans la page de demande.
  • @ recources vous voyez: icône et manifeste
  • @ Icône: Cliquez sur parcourir et choisissez votre icône.

Problème résolu.

-5
répondu Mars 2011-01-02 10:53:39