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 :

resultat dans une form vers une autre


Sujet :

Windows Forms

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 323
    Points : 128
    Points
    128
    Par défaut resultat dans une form vers une autre
    Bonjour à tous, voici mon problème. Je sais que c'est du classique, c'est les bases, mais je bloque encore à ca
    Et le pire dans cette histoire, c'est que je n'arrive pas à m'exprimer de manière succincte pour trouver des solutions sur le net (parce que je pense que cette question à déjà été posé 20000 fois, et j'en suis désolé de la reposer encore).

    Bref voila ce que je souhaiterai faire,
    Une form lance une autre form ( form1.Show(); ). Dans form1 se trouve un button et un textbox. L'utilisateur rempli le textbox et clique sur le button. La form1 disparait et dans la form initiale se trouve une variable avec le contenu du texbox qu'il y avait dans la form1.

    Voila. Je bloque sur le fait de devoir renvoyer la valeur de la textbox.Text de la form1 vers la form initiale...

    Jetez moi les pierres, elles sont pas loin...

  2. #2
    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 754
    Points
    39 754
    Par défaut
    Il est plus facile de faire le contraire (récupérer à partir de la form de départ une valeur de form1). Dans Form1, tu crées une propriété qui renvoie la valeur du TextBox :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public string TexteSaisi
    {
        get { return textBox1.Text; }
        set { textBox1.Text = value; }
    }
    Et pour l'utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if (form1.ShowDialog() == DialogResult.OK)
    {
        resultat.Text = form1.TexteSaisi;
    }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 323
    Points : 128
    Points
    128
    Par défaut
    Ouch, j'étais pas prêt de trouvé la solution
    VOici mon code dans la form principal:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    add_qte ad = new add_qte();
    ad.Show();
    // je n'ai pas gardé le if, est-ce réellement important ?
    string resultat = add_qte.TexteSaisi;
    MessageBox.Show(""+resultat);
    j'ai fais un copié collé bête et méchant de ton code pour la form1. Voici l'erreur provoquée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique 'Pharmastat.add_qte.TexteSaisi.get'
    j'ai du foiré quelques part

  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 754
    Points
    39 754
    Par défaut
    "add_qte" est le nom de la classe, pas un nom de variable. Il faut mettre "ad.TexteSaisi".

    Mais en l'état, ton code ne marchera pas : avec ad.Show, la fenêtre ne sera pas affichée de façon modale, donc quand tu vas récupérer ad.TexteSaisi, l'utilisateur n'aura pas encore rien saisi... Il vaut mieux utiliser ShowDialog, qui affiche la form de façon modale (l'appel à ShowDialog bloque jusqu'à ce que l'utilisateur ait fermé form1)

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 323
    Points : 128
    Points
    128
    Par défaut
    C'est parfait vous aviez raison...

    J'ai un peu de mal à saisir comment cela marche (le fait de déclarer une variable et de faire comme si c'était une fonction) :
    public string lala
    {
    get...
    set..
    }

    Mais cela fonctionne. Je vous remercie.

  6. #6
    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 754
    Points
    39 754
    Par défaut
    Citation Envoyé par Redg9 Voir le message
    J'ai un peu de mal à saisir comment cela marche (le fait de déclarer une variable et de faire comme si c'était une fonction) :
    public string lala
    {
    get...
    set..
    }
    Ca s'appelle une propriété. C'est l'équivalent C# des fonctions getXXX/setXXX qu'il y a dans d'autres langages.
    Chapitre 2.1.14. du cours de Serge Tahé

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 323
    Points : 128
    Points
    128
    Par défaut
    super merci jvais taffer ca

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/06/2014, 17h09
  2. Déplacer une image d'une feuille vers une autre dans un fichier Excel
    Par helenaide dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/10/2011, 14h27
  3. Réponses: 4
    Dernier message: 04/04/2011, 11h46
  4. Réponses: 1
    Dernier message: 06/01/2010, 08h55
  5. [VB.NET] Copie d'une table d'une DB vers une autre
    Par SergeF dans le forum Windows Forms
    Réponses: 9
    Dernier message: 20/11/2004, 09h54

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