Liste de propriétés [Résolu]

Messages postés
357
Date d'inscription
jeudi 8 juin 2006
Dernière intervention
26 décembre 2011
- - Dernière réponse : cs_Bidou
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Dernière intervention
20 juin 2013
- 24 août 2008 à 21:39
Salut à tous,
J'aimerais pouvoir lister les propriétés publiques d'une classe en c#.
Comme le fait l'explorateur d'objets de visual studio.
J'ai déjà chercher sur le net mais pour l'instant j'ai rien trouvé.
Merci à tous.
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
3489
Date d'inscription
lundi 16 octobre 2000
Dernière intervention
30 octobre 2008
2
Merci
Salut,

tu peux faire ca par reflection :

Type

t
=
typeof
(
TaClasse
);

PropertyInfo
[]
props
=
t
.
GetProperties
();

Mx
MVP C# 

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de MorpionMx
Messages postés
357
Date d'inscription
jeudi 8 juin 2006
Dernière intervention
26 décembre 2011
0
Merci
Salut,
J'ai réussis a trouver ceci sur le net. Si ça peut en aider d'autres.

Pour analyser et modifier un object obj
1 - Récupérer le type de l'objet

Type type = obj.GetType();
 
2 - Pour avoir la liste de ses propriétés :

PropertyInfo []propz = type.GetProperties(...);
- Les options en paramètres dépendent de ce que tu veux :
(public/protégées, Instance/statiques, héritée ou déclarée, ...) Voir
la doc de .Net

- Pour la liste de méthodes, c'est pareil avec MethodInfo . Pour les champs FieldInfo.

 
3 - Pour récupérer une valeur : GetValue(...)
PropertyInfo prop = ...

object value = prop.GetValue(obj, null);
 
4 - Pour modifier une valeur : SetValue(...)
PropertyInfo prop = ...

prop.SetValue(obj, value, null);

A+
Commenter la réponse de xmox667
Messages postés
5507
Date d'inscription
dimanche 4 août 2002
Dernière intervention
20 juin 2013
0
Merci
En gros, c'est la réponse qui t'a été donnée par Mx

<hr />
-My Blog-
Commenter la réponse de cs_Bidou

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.