Bonjour,

Je voudrais récupérer (dans des tableaux, tables ou listes) la liste des constantes et/ou des valeurs de diverses Enumérations utilisées sous DotNet, par exemple XmlNodeType, XmlNodeChangedAction, ValidationType etc.
Je soulève le problème dans ce forum, parce que c’est l’interfaçage avec Windev qui pose problème et non le principe (les exemples de solution C ou VB ne manquent pas).

Malheureusement, ces énumérations ne peuvent pas faire l’objet d’un parcours (pas IEnumerable).
Il faut donc procéder autrement et la classe Enum présente deux méthodes permettant de récupérer ces valeurs sous forme de tableau :
.GetNames(Type) pour les noms des constantes
.GetValues(Type) pour les valeurs correspondantes
L’éditeur connaît XmlNodeType (ou les autres énumérations) et suggère les méthodes ci-dessus.

Par contre, il ne suggère pas .GetType() qui est pourtant une méthode d’Enum.

Le problème que je rencontre est de passer le type de ces énumérations aux méthodes .GetNames et .GetValues,
- soit via une constante ou une variable,
- soit via une méthode, pour pouvoir construire une fonction générique.

Pour cette seconde alternative, Windev ne dispose pas d’un GetType() ou TypeOf(), et TypeVar() renvoie un type’ 72 – DotNet Object’ sans autre précision.
Je ne parviens pas à appeler la méthode .GetType sur l’énumération.
Le code serait alors .GetNames(Enumération.GetType()), mais l’éditeur ne propose pas cette méthode sur ces énumérations.

Comme mes connaissances de DotNet et de la POO sont limitées, je suis dans l’impasse.
L’un de vous aurait-il une idée ou la solution ?

D’avance, merci

Hemgé