Bonjour,
Quel est l'équivalent de la propriété Location, qui retourne la position de l'objet par rapport au parent, en WinForms pour WPF?
Cordialement,
Bonjour,
Quel est l'équivalent de la propriété Location, qui retourne la position de l'objet par rapport au parent, en WinForms pour WPF?
Cordialement,
en fait y'a pas mais par contre
tu peux avoir les position des objets en fonction de leurs conteneurs
par exemple :
sur un canvas tu as
canvas.gettop et canvas.getleft
sur une grid en fonction
des columns puis des vertical et horizontal aligment
tu peux utiliser ou lire les margins
IKEAS : Finalement je crois que c'est dans ses faiblesses que l'on y trouve a la fois de la force et a la fois de la richesse...
----------------------------------------------------
Si vous avez du taf en wpf & design d'application sympa, contactez moi !!!!
http://ultimatecorp.eu/wpf/
quel est l'intérêt si ce n'est pas indiscret...
je m'explique, cela peut être intéressant dans le cas où l'on travail avec des Canvas, mais dans ce cas la propriété de dépendance Canvas.X ou Canvas.Y est ton amie...
Mais lorsque l'on travail avec des layout genre Grid ou encore DockPanel, ou WrapPanel, je vois pas trop l'intérêt, puisque si ta bien positionné tes objets et leur disposition par rapport au parent, ils se redimensionnent/déplacent automatiquement.
Ça peut sans doute être utile pour faire du drag-and-drop sur toute l'interface.
Formateur expert .Net/C#/WPF/EF Certifié MCP disponible sur Paris, province et pays limitrophes (enseignement en français uniquement).
Mon blog : pragmateek.com
oui sauf qu'en général tu contrôle le "drop" sur les éléments qui sont susceptibles de le recevoir... donc le positionnement devient là totalement inutile, ou gadget.
Oui d'accord pas de problème quand on travaille dans un conteneur, mais là dans mon cas, j'ai deux "Window" superposé, quand je clique sur un point de la première fenetre, je veux retrouver le contrôle contenu dans la fenêtre de derrière à l'aide des coordonnées fourni par l'évènement e.GetPosition( this );
Voilà pourquoi j'ai besoin d'une propriété Location, j'ai essayé de faire la mienne en utilisant les propriétés Margin, mais ça me retourne toujours 0, alors que mes contrôles sont bien disposés partout dans le conteneur...
Voici la méthode que j'ai trouvé:
Et ça marche!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 if ( Parent != null && Parent is Visual ) { Location = ( Parent as Visual ).TransformToVisual( this ).Transform( new Point( 0, 0 ) ); Location = new Point( Location.X * -1, Location.Y * -1 ); }
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager