WPF définissant un MenuItem.Icon dans le code
Question
J'ai un dossier d'images contenant un png.Je voudrais définir l'icône d'un MenuItem sur ce png.Comment puis-je écrire cela dans le code procédural ?
La solution
menutItem.Icon = new System.Windows.Controls.Image
{
Source = new BitmapImage(new Uri("images/sample.png", UriKind.Relative))
};
Autres conseils
<MenuItem>
<MenuItem.Icon>
<Image>
<Image.Source>
<BitmapImage UriSource="/your_assembly;component/your_path_here/Image.png" />
</Image.Source>
</Image>
</MenuItem.Icon>
</MenuItem>
Assurez-vous simplement que votre image est également incluse dans le fichier du projet et marquée comme ressource, et vous êtes prêt à partir :)
La réponse d'Arcturus est bonne car cela signifie que vous avez le fichier image dans votre projet plutôt que dans un dossier indépendant.
Donc, dans le code, cela devient...
menutItem.Icon = new Image
{
Source = new BitmapImage(new Uri("pack://application:,,,/your_assembly;component/yourpath/Image.png"))
}
Voici comment je l'ai utilisé (de cette façon, il n'a pas besoin d'être intégré à l'assembly) :
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;
C'est un peu plus court :D
<MenuItem Header="Example">
<MenuItem.Icon>
<Image Source="pack://siteoforigin:,,,/Resources/Example.png"/>
</MenuItem.Icon>
</MenuItem>
Pour ceux d'entre vous qui utilisent vb.net, pour ce faire, vous devez utiliser ceci :menuItem.Icon = New Image() With {.Source = New BitmapImage(New Uri("pack://application:,,,/your_assembly;component/yourpath/Image.png"))}
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>
Vous pouvez également utiliser votre Visual Studio pour insérer une icône.C'est le moyen le plus simple
- Faites un clic droit sur votre projet dans l'explorateur de solutions
- choisi Propriétés
- Assurez-vous que vous êtes sur la page de candidature.
- @ressources que vous voyez :Icône et manifeste
- @ Icône :Cliquez sur Parcourir et choisissez votre icône.
Problème résolu.