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

VB.NET Discussion :

Problème avec inherits listview dans une classe component


Sujet :

VB.NET

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 45
    Points
    45
    Par défaut Problème avec inherits listview dans une classe component
    Bonsoir,

    Je fais appel à vous car je suis entrain de développer une petite application pour mon examen de fin d'année.

    Donc, j'ai une solution Visual basic.net contenant 3 projet :
    - les fenêtres principales
    - les classes
    - les contrôles utilisateurs (CTRLUser)

    Donc, je souhaiterai ajouter dans CTRLUser une "classe component" (LVLivre) héritant d'un ListView classique.
    J'ai donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Class LVLivre
        Inherits ListView
    End Class
    Or, j'ai cette erreur :
    Type 'ListView' non défini.
    Que faut-il faire pour que cette erreur soit résolue ? Je l'avait fait en cours mais je ne m'en rappelle plus.

    Merci d'avance,
    Cordialement Age1s

  2. #2
    Membre chevronné Avatar de Danyel
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2005
    Messages
    1 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 682
    Points : 1 952
    Points
    1 952
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Class LVLivre
        Inherits System.Windows.Forms.ListView
    End Class
    Que les neurones soient avec toi, jeune padawan.
    Ne pas oublier, qu'un métier, développer être.
    Effectuer des recherches et lire les tutos, avant de poster, tu dois.
    Aucune question technique, faites par MP, tu ne dois.

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 45
    Points
    45
    Par défaut
    Déjà essayé et j'obtiens cette erreur :
    La classe de base 'System.Windows.Forms.ListView' spécifiée pour la classe 'LVLivre' ne peut pas être différente de la classe de base 'System.ComponentModel.Component' de l'un de ses autres types partiels.

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 749
    Points
    39 749
    Par défaut
    Ton contrôle personnalisé est en fait séparé en 2 fichiers :
    - LVLivre.vb, que tu peux modifier librement
    - LVLivre.designer.vb, utilisé par le designer (par défaut il est masqué dans Visual)
    La classe LVLivre est donc divisée en 2 parties grâce à la technique des "classes partielles"

    Mais il faut que les différentes parties de la classe définissent toutes la même classe héritée, or dans le fichier designer.vb il est dit que la classe hérite de Component... Il faut donc que tu modifies ce fichier (qu'il ne faut d'habitude jamais modifier) pour mettre ListView à la place de Component

    Soit dit en passant, c'est un peu débile que la classe de base soit déclarée dans le designer.vb, vu que ça empêche le développeur de la modifier (enfin, de la modifier facilement). Je suppose que ça reflète la volonté de Microsoft de présenter Visual Basic comme un langage "facile" en masquant la complexité au développeur... Dès qu'on veut faire des trucs avancés, c'est la m***e . En C#, la classe de base est déclarée dans le fichier que l'utilisateur peut modifier, ce qui est tout de même plus logique...

  5. #5
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2006
    Messages : 45
    Points : 45
    Points
    45
    Par défaut
    Merci bien.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème avec l'apostrophe dans une requête
    Par mika0102 dans le forum VBA Access
    Réponses: 7
    Dernier message: 09/03/2019, 16h51
  2. [POO] Problème avec un require_once dans une classe
    Par Sayrus dans le forum Langage
    Réponses: 5
    Dernier message: 23/02/2008, 14h40
  3. [Delta3d] probléme avec un objet dans une map
    Par astragoth dans le forum Développement 2D, 3D et Jeux
    Réponses: 1
    Dernier message: 27/03/2006, 14h49
  4. Problèmes avec un TWebBrowser dans une DLL
    Par bellamyjc dans le forum Composants VCL
    Réponses: 2
    Dernier message: 12/01/2005, 22h35
  5. Problème avec un LIKE dans une procédure stockée
    Par Oluha dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 22/12/2004, 14h38

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