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

C# Discussion :

formulaire dynamique avec C#


Sujet :

C#

  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 72
    Par défaut formulaire dynamique avec C#
    Bonsoir tout le monde,

    Je voudrai créer un formulaire dans ma fenêtre, là c'est simple, avec visual c# c'est vite fait, mais là où ça se complique, c'est que quand je clic sur un bouton, je rajoute un mini formulaire dans ma fenêtre!!, là je suis bloqué !!!!

    Si vous avez la solution, ou quoi que soit d'autre, vous ete les bienvenus ,
    Merci.

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    En conception, dans le mini formulaire définir un panel Général (Dock=Fill, Modifiers=internal), contenant tous les controls.

    En exécution, dans le Button_Click, faire un new du mini-formulaire sans faire un Show, puis modifier la propriété du Panel général.
    MiniForm MiniFrm=new MiniForm() ;
    MiniFrm.PanelGeneral.Parent=this.MonPanelDestination ;
    MiniFrm.Dispose() ;

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 72
    Par défaut
    merci pour ta participation "Graffito", tu sais je débute en C#, et je t'assure je ne le maitrise pas bien, juste un truc STP, esque tu peut me donner les etapes??? car là je t'assure je suis pérdu!!! car je ne vois pas comment je pourrai ajouter des composants dans mon formulaire tout en appuyant sur le bouton "Ajouter"!!!

    au moins, si on peut créer une fenêtre qui a un bouton "Ajouter", et a chaque clic tu as une zone de texte (ou n'importe quel composant) qui est ajouter dans ta fenêtre, voila le cas de base.

  4. #4
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    ajouter des composants dans mon formulaire tout en appuyant sur le bouton "Ajouter"!!!
    Le principe est de créer les composants via la création d'une nouvelle form, puis de transférer des composants de la nouvelle forme vers celle contenant le bouton.

    En conception dans Form1 :
    - 1 panel Panel1 (Dock=Top) avec le(s) boutons(s) Button1,
    - 1 panel Panel2 (Dock=Fill) vide

    En conception, dans Form2 :
    - 1 panel PanelGeneral avec tous les controls de Form2.

    En exécution, dans l'event Buton1_Click de Fom1:
    dans le Button_Click, faire un new du mini-formulaire sans faire un Show, puis modifier la propriété du Panel général.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Form2 Frm2 = new Form2() ;
    Frm2.PanelGeneral.Parent=this.Panel2;
    Frm2.Dispose() ;

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 72
    Par défaut
    tu sais j'ai pas besoin de 2 form, mais d'un seul.
    Le bouton qui permet de créer dynamiquement les composants se trouve dans form1, et les composants créer dynamiquement s'afficheront juste en bas de form1.

  6. #6
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 72
    Par défaut
    c'est vrai, ça marche super bien, mais y a un ptit probléme, si je clic 2 fois sur le bouton "Ajouter", normalement il m'affiche 2 fois les composants!!!, mais là il ne m'affiche qu'un seul.

    j'ai compris ce que le code veut faire, mais y a t'il pas un moyen pour ne pas supprimer le contenu du Panel2????

  7. #7
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    mais y a t'il pas un moyen pour ne pas supprimer le contenu du Panel2????
    Le provnlème est que les 2 Panel2 se superposent.

    Pour éviter le problème : En conception, mettre la propriété Dock de Panel2 à "Top" au lieu de "Fill".

  8. #8
    Membre confirmé
    Inscrit en
    Octobre 2009
    Messages
    72
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 72
    Par défaut
    c'est pareil j'ai le même résultat, tu sais ce que je veux, c'est créer des tuples (c'est comme en DHTML où tu peur créer des balises dans ta page web a l'aide du javascript), Si je clic sur le bouton "ajouter" il me crée une zone de texte, et si je clic encore une fois sur le bouton "ajouter", il ne supprime pas la zone créé précédement mais il crée juste en dessous une autre zone de texte, c'est ce que je cherche a faire.

  9. #9
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    c'est pareil j'ai le même résultat
    Non, si tu as bien mis Dock=Top et s'il y a de la place dans PanelGeneral, tu devrais voir tous les Panel2 les uns en dessous des autres.

    Si Panel General n'est pas assez grand, mettre sa propriété AutoScroll à True.

  10. #10
    Membre émérite Avatar de ppphil
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    617
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 617
    Par défaut
    Citation Envoyé par Umlist Voir le message
    c'est pareil j'ai le même résultat, tu sais ce que je veux, c'est créer des tuples (c'est comme en DHTML où tu peur créer des balises dans ta page web a l'aide du javascript), Si je clic sur le bouton "ajouter" il me crée une zone de texte, et si je clic encore une fois sur le bouton "ajouter", il ne supprime pas la zone créé précédement mais il crée juste en dessous une autre zone de texte, c'est ce que je cherche a faire.
    Peut-être ceci...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    private int top = 1;
     
        private void button4_Click(object sender, EventArgs e)
        {
          TextBox tb = new TextBox();
          tb.Top = top;
          top += tb.Height + 4;
          this.Controls.Add(tb);
        }

Discussions similaires

  1. formulaire dynamique avec Label For
    Par stardeus dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 03/05/2007, 13h39
  2. Utilisation des formulaires dynamiques avec struts
    Par nabdelghafour dans le forum Struts 1
    Réponses: 1
    Dernier message: 30/03/2007, 11h58
  3. Réponses: 13
    Dernier message: 08/02/2007, 17h05
  4. Formulaire Dynamique Avec Struts
    Par tarakakik dans le forum Struts 1
    Réponses: 1
    Dernier message: 24/08/2006, 13h22

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