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

Windows Forms Discussion :

Dupliquer une form


Sujet :

Windows Forms

  1. #1
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut Dupliquer une form
    Bonjour a tous
    j'aimerai créer des Forms qui se ressembles un peut, pour cela j'ai crée une Form de base (Form1), j'aimerai maintenant la dupliquer dans une autre form (form2) pour la modifier mais je trouve pas comment.
    j'ai fait un copier sur ma Form1 puis un coller sur mon projet, ça marche très bien, j'ai eu une nouvelle Form dupliqué de la 1ere mais le soucie c'est que lors de l'exécution de mon application je reçois l'erreur suivante :
    mon application s'appelle C4RT4 (jeux de carte)

    Error 1 The item "obj\Debug\C4RT4.form1.resources" was specified more than once in the "Resources" parameter. Duplicate items are not supported by the "Resources" parameter.

    ça veux dire quoi ce truc la ?!!
    merci d'avance

  2. #2
    Membre habitué Avatar de obitskater
    Profil pro
    Développeur .NET
    Inscrit en
    Février 2008
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2008
    Messages : 163
    Points : 132
    Points
    132
    Par défaut
    Salut!

    De façon générale il est préférable dans le monde du dev d'éviter au maximum les copiers/collers de fichiers directement.

    Pour ce que tu souhaites faire, le mieux serait de créer une nouvel form proprement , et seulement après de copier le contenu de ta classe auto générée par VS maForm1.Designer.cs dans celle de ta form 2.

    J'espère avoir été clair

  3. #3
    Membre émérite Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Points : 2 925
    Points
    2 925
    Par défaut
    Hello,

    le copier / coller, en effet, c'est le cauchemar de la maintenance ! Ici, le mieux, c'est d'utiliser l'héritage. Les Forms ne sont que des objets, après tout...
    Donc si t'as une form F2 qui est juste un enrichissement d'une form F1, il suffit de faire hériter F2 de F1.
    Remplace public class F2 : Form par public class F2 : F1.
    ಠ_ಠ

  4. #4
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut
    j'ai jamais fait de l'héritage avant mais le problème c'est que, je veux pas dupliquer ma form apres le lancement du projet, mais bien avant pour que je puisse la remodeler d'une autre maniere, alors que l'héritage c'est que du codage.

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par the-morpher Voir le message
    j'ai jamais fait de l'héritage avant mais le problème c'est que, je veux pas dupliquer ma form apres le lancement du projet, mais bien avant pour que je puisse la remodeler d'une autre maniere, alors que l'héritage c'est que du codage.
    Quelqu'un peut me traduire cela ?

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  6. #6
    Membre émérite

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 387
    Points : 2 999
    Points
    2 999
    Par défaut
    Citation Envoyé par the-morpher Voir le message
    j'ai jamais fait de l'héritage avant mais le problème c'est que, je veux pas dupliquer ma form apres le lancement du projet, mais bien avant pour que je puisse la remodeler d'une autre maniere, alors que l'héritage c'est que du codage.
    Ce qui dit Guulh ressemble pourtant à ce que tu veux faire.
    Ajoute une Form à ton projet, vas dans le code et dérive directement ta nouvelle Form de la seconde. Quand tu afficheras en mode conception, ta nouvelle form aura tous les éléments de la première.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public partial class Form1 : Form
    {
    }
     
    public partial class Form2 : Form1
    {
    }

  7. #7
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Toutes ces réponses sont tres pertinentes

    Mais pour repondre a ta question initiales

    Essayons d'eviter les fomr1, Form2, Windowsapplication1 etc
    Il faut faire l'effort de donner un nom pertinent A LA CREATION d'un nouvel objet

    Ton problème c'est vraissemblablement que ton couper-coller a embarqué le nom de ta form dans le code et le designer

    Un petit travail de nettoyage et de rennomage manuel s'impose AVEC des noms CORRECTS
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  8. #8
    Membre régulier

    Inscrit en
    Février 2009
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 106
    Points : 71
    Points
    71
    Billets dans le blog
    1
    Par défaut
    olibara : On effet, mes Forms ne s'appelles pas "Form1-Form2" j'ai juste dis ça pour mieux exprimer mon problème.
    j'ai bien changé les noms des variables-classes par le nom de la nouvelle form AVANT mais ça donné pas, MAIS j'ai refait le travaille est voila ça marche très bien maintenant.
    Chapeau au esprits ouvert
    _____________________________________________

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

Discussions similaires

  1. [VB.NET]Comment Imprimer une form
    Par bernard06 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 19/10/2011, 17h43
  2. [VB6] [Excel] Feuille dans une form, sans excel installé
    Par ro2v dans le forum Installation, Déploiement et Sécurité
    Réponses: 3
    Dernier message: 05/05/2010, 12h45
  3. ouverture d'une form en fondu transparent
    Par nicholz dans le forum Composants VCL
    Réponses: 9
    Dernier message: 08/01/2003, 11h06
  4. [VB6] masquer la barre de titre d'une form
    Par tiboleo dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 09/12/2002, 17h54
  5. [VB6][Formulaire]Appliquer un Scrollbar a une Form
    Par Boil dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 09/11/2002, 03h51

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