Images via Resource [Résolu]

moi411 180 Messages postés samedi 22 novembre 2003Date d'inscription 25 juin 2017 Dernière intervention - 17 mai 2013 à 17:46 - Dernière réponse : moi411 180 Messages postés samedi 22 novembre 2003Date d'inscription 25 juin 2017 Dernière intervention
- 19 mai 2013 à 14:29
Bonjour à tous,
Pour faire plus claire que dans le titre, j'ai une classe avec tout ce qu'il faut dedans qui me sert à créer et placer des controles sur mes fenêtres.
En particulier des boutons...
Le problèeme est que je veux mettre des images en arrière plan des boutons (background). Images qui sont des resources!

J'utilise cette syntaxe: this.monBouton.Background = new ImageBrush(new BitmapImage(new Uri("pack://application:,,,/Images/Img.png")));

Quand je démarre l'application le bouton n'apparait pas du tout (quand je n'utilise pas d'image il apparait comme je le veux et où je le veux) et quand je debug (ligne par ligne) le fonctionnement du programme stoppe sur la ligne inscrite plus haut et affiche la fenêtre sans le bouton!
Il ne renvoie pas d'exception mais agit comme si la ligne en question était un "return"...
J'espère avoir bien expliqué!
En attendant un coup de main je vous souhaite une bonne soirée.
A bientôt.

moi
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
moi411 180 Messages postés samedi 22 novembre 2003Date d'inscription 25 juin 2017 Dernière intervention - 19 mai 2013 à 14:29
3
Merci
Re,
Donc en WPF imageList n'existe pas et ce que j'ai trouvé est trop compliqué pour le peu que j'ai à faire...
Créer une classe complète avec héritage (de la classe ListBox) etc.
Malgré tout j'ai trouvé comment accéder à mes resources!

this.monBouton.Background = new ImageBrush(new BitmapImage(new Uri("pack://application:,,,/monAssembly;component/Resources/monImage.png")));

---> monAssembly est en fait le projet dans lequel le dossier de resources est placé.
---> Les images doivent être elles-mêmes des resources; Dans visual studio, click droit sur chacune des images et puis sur propriétés.
De là, placé "Build Action" à "resources".


Voilà, en espérant que ça serve à quelqu'un!
moi

Merci moi411 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 96 internautes ce mois-ci

Commenter la réponse de moi411
Whismeril 12101 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 15 octobre 2018 Dernière intervention - 17 mai 2013 à 20:17
0
Merci
Sans plus de code, pas facile.
Une fois j'ai utilisé une ImageList, il y a une petite flèche en haut à droite du composant, en appuyant dessus on peut choisir des images.
Elles sont ainsi embarquées dans l'ex et tu peux y accéder depuis le code comme ça:
this.pictureBox1.Image=imageList1.Images[0];



Whismeril
Commenter la réponse de Whismeril
moi411 180 Messages postés samedi 22 novembre 2003Date d'inscription 25 juin 2017 Dernière intervention - 17 mai 2013 à 23:01
0
Merci
Salut,
Imagelist en wpf, je ne me souvenais pas qu'il y avait!
Donc juste une précision, une imagelist est un contrôle que l'on peut remplir manuellement (pas de code), c'est bien ça?
Parce qu'ici le problème c'est que je ne sais pas utiliser les resources via du code...
En revanche l'imagelist c'est exactement ce qu'il me faut (différentes images selon les boutons qui sont créés)!

Bref j'essaye ça et je te tiens au courant...

moi
Commenter la réponse de moi411
Whismeril 12101 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 15 octobre 2018 Dernière intervention - 18 mai 2013 à 07:21
0
Merci
Ha pardon, j'avais pas fait attention, que tu avais posté en Wpf. Je ne sais pas s'il existe dans ce mode.


Whismeril
Commenter la réponse de Whismeril
moi411 180 Messages postés samedi 22 novembre 2003Date d'inscription 25 juin 2017 Dernière intervention - 18 mai 2013 à 18:05
0
Merci
Et donc ça n'existe pas!!! J'ai trouvé un site qui propose une parade alors je vais essayer et si ça marche je poste...
En attendant est-ce qu'il y a quelque chose qui ne va pas dans la ligne que j'utilise?
Parce que tout ce que j'ai trouvé un peu partout me ramène à ça mais je confirme, ça ne fonctionne pas!

Aller, bon week end.
Salut.

moi
Commenter la réponse de moi411

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.