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

Visual Studio Discussion :

Fenêtre de base (modèle)


Sujet :

Visual Studio

  1. #1
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut Fenêtre de base (modèle)
    Bonjour,

    J'aimerais faire des modèles de fenêtre réutilisables par la suite. Pour cela, j'ai fait une FormMyEnterprise héritant de System.Windows.Form qui contient uniquement mes routines de traduction.

    Puis j'ai fait une classes FormMyEnterpriseMain qui hérite de FormMyEnterprise, et j'y ai ajouté un menu principal vide et une barre d'état contenant date, heure, version.

    J'aimerais maintenant que toutes les fenêtres principales héritent de FormMyEnterpriseMain et les autres fenêtre héritent de FormMyEnterprise. (Ces deux classes sont abstraites). Jusque là, tout fonctionne, je passe par la création d'un nouveau formulaire hérité, parcours de la dll, ... .

    Par contre, je n'arrive pas à ajouter des champs, ni à mon menu principal, ni à ma barre d'état en mode Design. Tout est verrouillé. Je dois passer par le code. Comment faire?

    Merci d'avance!

  2. #2
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669
    Par défaut
    Tu as une propriété "modifiers" dans ta fenêtre de base qui permet de définir l'accessibilité des composants.

    Par défaut, les composants ont une accessibilité à "Friend". "Private Friend", en fait.
    Il faut au moins avoir une accessibilité en "Protected".

  3. #3
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    Merci pour la réponse.

    Je ne trouve pas cette propriété pour la fenêtre (FORM) dans le mode Design, et pour mes barres d'état et barre de menu, j'ai déjà essayé protected (qui devrait suffir) et public, mais rien à faire....

    A mon avis, la fenêtre est public, car c'est ce qui est mentionné dans le fichier .cs...

  4. #4
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    Il y a un truc bizarre que je ne comprends pas. Cette procédure fonctionne très bien pour des Panels ou des boutons, mais elle ne fonctionne pas pour des StatusStrip, MenuStrip, ToolStrip...

    Est-ce que quelqu'un a une explication???

  5. #5
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669
    Par défaut
    Citation Envoyé par stephane.julien Voir le message
    Merci pour la réponse.

    Je ne trouve pas cette propriété pour la fenêtre (FORM) dans le mode Design, et pour mes barres d'état et barre de menu, j'ai déjà essayé protected (qui devrait suffir) et public, mais rien à faire....

    A mon avis, la fenêtre est public, car c'est ce qui est mentionné dans le fichier .cs...
    Ce n'est pas au niveau de la fenêtre, mais au niveau de chaques composants inclues dans ta fenêtre.

  6. #6
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    C'est justement en changeant les propriétés des composants de private à protected que ça ne s'améliore pas. Cela uniquement pour les StatusStrip, MenuStrip et ToolStrip. Pour les panels, splitter, button, label, ... c'est bon!

    Ma question est donc : Comment faire pour ajouter des ToolStripMenuItem dans la fenêtre héritant de mon modèle si le ToolStrip est défini dans mon modèle. Idem Pour StatusStrip et MenuStrip.

  7. #7
    Membre habitué Avatar de stephane.julien
    Inscrit en
    Septembre 2007
    Messages
    342
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2007
    Messages : 342
    Points : 130
    Points
    130
    Par défaut
    Bon et bien je crois que j'ai ma réponse. C'est tout simplement Microsoft qui a bloqué cette fonctionnalité . Selon eux, on doit faire le remplissage des composants par code! Voir le lien suivant :

    cs.rthand.com

    Je ne sais par contre pas si la correction est prévue (faite) dans les version 2008 et 2010 de Visual Studio. Je travail avec Visual Studio 2005 Pro. Est-ce que quelqu'un sait?

Discussions similaires

  1. [ZF 1.9] Configuration de base : modèles inaccessibles
    Par WalidNat dans le forum MVC
    Réponses: 2
    Dernier message: 24/11/2009, 10h47
  2. [WD14] Fenêtre crée depuis modèle n'a pas tous les champs
    Par Pascal26 dans le forum WinDev
    Réponses: 1
    Dernier message: 18/08/2009, 16h04
  3. [VBA] masquer la fenêtre de base de donnée
    Par Antho73 dans le forum VBA Access
    Réponses: 2
    Dernier message: 29/07/2008, 14h03
  4. Réponses: 12
    Dernier message: 11/02/2007, 16h28
  5. empêcher l'ouverture de la fenêtre de base de données
    Par jm vangoethem dans le forum Access
    Réponses: 2
    Dernier message: 20/01/2006, 18h47

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