Méthode générique pour centrer des controles [Résolu]

babe59 189 Messages postés vendredi 28 mai 2004Date d'inscription 27 novembre 2015 Dernière intervention - 26 oct. 2006 à 13:50 - Dernière réponse : babe59 189 Messages postés vendredi 28 mai 2004Date d'inscription 27 novembre 2015 Dernière intervention
- 27 oct. 2006 à 13:06
Bonjour

j'essaye d'écrire une méthode pour centrer (horizontal) les contrôles de ma form. J'aimerai que cette méthode soit générique : c'est à dire que je récupère et modifie le Location.X de l'objet passé en paramétre.

publicstaticvoid CenterHorizontalControl(object objAcentrer, object conteneur)
{
   Int32 WidthControl = ((System.Windows.Forms.CheckBox)objAcentrer).Size.Width 
   Int32 widthConteneur = ((System.Windows.Forms.Form)objAcentrer).Size.Width 

   ...
}

En fait, j'aimerai ne pas caster explicitement l'objet  Ca donnerait quelque chose du style => 
   Int32 WidthControl = ((xx)objAcentrer).Size.Width 
   Int32 widthConteneur = ((xx)objAcentrer).Size.Width 
où xx n'est pas clairement explicité

Merci

DT
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Nikoui 794 Messages postés vendredi 24 septembre 2004Date d'inscription 19 août 2008 Dernière intervention - 26 oct. 2006 à 14:23
3
Merci
La base commune a tous les controles est ... la classe Control.
Il te suffit donc de remplacer ton cast (xx) en cast (Control) (qui possède les propriétés dont tu as besoin pour faire tes calculs).

Merci Nikoui 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 83 internautes ce mois-ci

Commenter la réponse de Nikoui
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 26 oct. 2006 à 13:58
0
Merci
Salut,
Pourquoi ne pas utiliser le FlowLayoutPanel ou éventuellement le TableLayoutPanel ?

<hr size="2" />-Blog-
Commenter la réponse de cs_Bidou
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 26 oct. 2006 à 17:47
0
Merci
Rhalalala, si y'a des objects, c'est pour les utiliser hein

<hr size="2" />-Blog-
Commenter la réponse de cs_Bidou
babe59 189 Messages postés vendredi 28 mai 2004Date d'inscription 27 novembre 2015 Dernière intervention - 27 oct. 2006 à 13:06
0
Merci
Bonjour Bidou,
J'utilise TableLayoutPanel pour positionner mes contrôles mais dans le cas ci-dessus, c'est pour par exemple centrer le label général de la form, je n'ai pas envie d'utiliser un tableLayoutPanel pour cela... mais j'ai peu être tort ... c'est sans doute une question d'habitude avec d'ancien langage.
Slts
 

DT
Commenter la réponse de babe59

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.