[C# & WPF] Taille d'une image

Taille d'une image [C# & WPF] - C#/.NET managed - Programmation

Marsh Posté le 15-07-2009 à 14:06:24    

Bonjour,

 

Je suis sur une appli WPF, j'ai besoin de récupérer la largeur d'une image.

 

Je déclare mon image comme suis dans mon xaml :
  <Image  Name="imageForm" Source="[MonFic].png" VerticalAlignment="Top" Stretch="Uniform" />

 

pour récupérer la taille de mon image, j'utilise le code suivant dans mon fichier cs :
  Double formWidth = imageForm.Width;

 

A noter que je n'utilise pas imageForm.ActualWidth ou imageForm.Source.Width car la propriété Stretch redimensionne l'image et la taille reel de l'image ne m'intéresse pas...

 


Le problème est qu'avec ce code, je ne récupère rien dans ma variable "formWidth". Quand je veux afficher le contenu, j'ai droit à Non Numérique... Le déboggeur m'indique que la varaible contient NaN (Not a Number)...
Une idée, je bloque un peu là ! Elle a bien une taille cette image !!!

 

D'avance merci :)

 

Antoine


Message édité par glsmougeot le 15-07-2009 à 14:09:57
Reply

Marsh Posté le 15-07-2009 à 14:06:24   

Reply

Marsh Posté le 15-07-2009 à 19:20:31    

oué mais non ! :)
 
Avec ton code, je récupère la taille REEL de l'image. Et non sa taille apres redimensionnement automatique.
 
en passant, pour ce faire, tu peux simplement utiliser monImage.Source.Width

Reply

Marsh Posté le 16-07-2009 à 09:59:54    

holala, je comprend rien :x
 
Mon image fait 1190x1684
Peu importe la taille qu'elle prend à l'écran, et peut importe les fonctions que j'utilise pour récupérer cette taille, j'obtiens 1190x1684
 
Hors, je travaille exprès en 1024x768 pour obliger un redimensionnement !

Reply

Marsh Posté le 16-07-2009 à 10:04:33    

bon ok je viens de commencer à comprendre ce qui foirait ; je demande la taille de l'image juste après le redimensionnement et il me donne toujours l'ancienne taille (pourquoi ?)  
Si je demande la taille dans une autre fonction avec un autre event, apres le redimensionnement bien sur. Il me donne la bonne taille...

Reply

Marsh Posté le 16-07-2009 à 10:17:29    

hoooooooooo
que j'aime etre n00b ; ca fait gagner ou pas un temps fou :>

Reply

Marsh Posté le 16-07-2009 à 13:10:17    


t'as un exemple d'utilisation de cette methode ?
Je n'arrive toujours pas à faire ce que je voudrai :/

Reply

Marsh Posté le 16-07-2009 à 14:34:12    

ayé c'est bon j'ai trouvé
J'ai utilisé SizeChanged

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed