IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Framework .NET Discussion :

[VB.NET] Lister tous les types héritant d'un certain type


Sujet :

Framework .NET

  1. #1
    AP
    AP est déconnecté
    Membre confirmé
    Avatar de AP
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2002
    Messages : 480
    Points : 538
    Points
    538
    Par défaut [VB.NET] Lister tous les types héritant d'un certain type
    Bonjour,

    Je cherche à lister tous les types disponibles héritant d'un certain type sachant que ce type n'apparait pas dans la toolbox.
    Si vous avez des pistes pour arriver à tel résultat, je suis preneur.

    Merci!

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    J'ai dû faire la même chose pour un projet, c'est en C# mais tu pourras convertir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
            /// <summary>
            /// Gets the subclasses of a given <see cref="Type"/>.
            /// </summary>
            /// <param name="asm">The assembly.</param>
            /// <param name="baseClassType">Type of the base class.</param>
            /// <returns></returns>
            private static Type[] GetSubClasses(Assembly asm, Type baseClassType)
            {
                List<Type> subClasses = new List<Type>();
     
                foreach (Type type in asm.GetTypes())
                {
                    if (type.IsSubclassOf(baseClassType))
                    {
                        subClasses.Add(type);
                    }
                }
                return subClasses.ToArray();
            }
    Cette méthode recherche dans une assembly, donnée en paramètre, les types héritant d'un type donné en paramètre aussi.

  3. #3
    AP
    AP est déconnecté
    Membre confirmé
    Avatar de AP
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2002
    Messages : 480
    Points : 538
    Points
    538
    Par défaut
    Merci Saumon!
    J'ai à peu près déjà le même code que toi. Mon problème est de ne pas chercher dans une assembly particulière mais plutôt de rechercher dans toutes les assembly référencée dans le projet (je suis en mode design pas runtime)
    Any idea?

  4. #4
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Tu peux faire ce traitement sur toutes les assemblies chargées à l'exécution.
    Cela correspond à ce que tu recherches ?

  5. #5
    AP
    AP est déconnecté
    Membre confirmé
    Avatar de AP
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2002
    Messages : 480
    Points : 538
    Points
    538
    Par défaut
    Merci Saumon pour tes propositions!
    J'ai enfin trouvé la solution élégante à ce problème: il faut passer par le service ITypeDiscoveryService et cela fonctionne parfaitement.

Discussions similaires

  1. lister tous les docs word en vb.net
    Par zit_zit dans le forum Windows Forms
    Réponses: 3
    Dernier message: 07/10/2007, 13h06
  2. Lister tous les triggers qui sont DISABLE
    Par mpeppler dans le forum Oracle
    Réponses: 2
    Dernier message: 23/08/2006, 10h05
  3. Réponses: 1
    Dernier message: 19/08/2006, 10h27
  4. MFC CDialog - lister tous les composants presents
    Par firejocker dans le forum MFC
    Réponses: 11
    Dernier message: 03/04/2006, 16h10
  5. Comment lister tous les composants d'une fiche ?
    Par tipiweb dans le forum Langage
    Réponses: 2
    Dernier message: 18/01/2006, 21h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo