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 :

Pb d'ouverture d'un form à partir d'un autre form


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 19
    Points
    19
    Par défaut Pb d'ouverture d'un form à partir d'un autre form
    Bonjour,
    Alors voilà mon problème. Je voudrais que lorsque je clique sur le bouton Ok de mon premier Form qui s'appelle FormParameters, mon deuxième form qui s'appelle FormTreeSize s'affiche mais je n'y arrive pas.
    Pour le moment mon code est le suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
            private void buttonOk_Click(object sender, EventArgs e)
            {
                if (checkBoxTreeSize.checked == true)
                {
                    FormTreeSize treeSize = new FormTreeSize();
                    treeSize.ShowDialog();
                }
            }
    Il ne génère aucune erreur mais il ne se passe rien quand je clique sur mon bouton Ok.
    Si quelqu'un peu m'aider ça serait très gentil.
    Merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 537
    Points : 369
    Points
    369
    Par défaut
    Je ne sais pas si ça peux t'aider , mais personnellement je déclare généralement les form en static et pour l'appel j'utilise .show() et non .showdialog()!

    sinon je ne vois pas trop pourquoi ça ne marcherais pas!

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 19
    Points
    19
    Par défaut
    Merci mais j'avais déjà essayé avec .Show() au lieu de .ShowDialog() et ça ne marche pas mieux. La compilation marche toujours bien mais pas de résultats.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 537
    Points : 369
    Points
    369
    Par défaut
    T'as déclaré ta form de cette façon??? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    static FormTreeSize treeSize = new FormTreeSize();

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 19
    Points
    19
    Par défaut
    Non, je ne peux pas, il me marque :
    Erreur 1 Le modificateur 'static' n'est pas valide pour cet élément
    Je ne peut d'ailleur mettre ni static ni public ni private.
    Je te mets le code de l'ensemble de ma classe pour que tu es une vision d'ensemble du truc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.IO;
    using System.Data.OleDb;
     
    namespace ArbreGenerique
    {
        public partial class FormParameters : Form
        {
            public DataSet ds;
     
            public FormParameters()
            {
                InitializeComponent();
            }
     
            //méthode permettant de sélectionner le fichier sur lequel on va réaliser le traitement
            private void buttonDataSource_Click(object sender, EventArgs e)// ce qu'il se passe quand on clique sur le bouton de recherche
            {
                OpenFileDialog ofn = new OpenFileDialog ();// ouvrir une fenêtre de recherche et de sélection de fichier
                ofn.Filter = "Fichiers Excel (*.xls)|*.xls";// filtre permettant de choisir quel type de fichier on souhaite afficher
                ofn.Title = "Choix du fichier de données";// titre de la fenêtre
                while (true)
                    if (ofn.ShowDialog() == DialogResult.OK)// ce qu'il se passe quand l'utilisateur clique sur Ouvrir
                    {
                        textBoxDataSource.Text = ofn.FileName;// récupère le chemin du fichier et l'inscrit dans la zone de texte
                        comboBoxY.Items.Add("Aucune");//on ajoute la possiblité de choisir aucun Y dans la liste des Y
                        string fichier = textBoxDataSource.Text;//stockage du nom du fichier dans une variable
                        OleDbConnection connectionProvider = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;data source="+fichier+";Extended Properties=Excel 8.0");
                        string requete = "select * from [Feuil1$]";//requete permettant de sélectionner toutes les données du fichier Excel
     
                        OleDbDataAdapter ThisCommand;
     
                        ThisCommand = new OleDbDataAdapter(requete, connectionProvider);
                        ds = new DataSet();
                        ThisCommand.Fill(ds);
     
                        for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
                        {
                            comboBoxY.Items.Add(ds.Tables[0].Columns[i].ColumnName);
                        }
     
                        return;// ferme la fenêtre de recherche
                    }
                    else// ce qu'il se passe quand il fait autre chose
                    {
                        return;// ferme la fenêtre de recherche
                    }
            }
     
            private void comboBoxY_SelectedIndexChanged(object sender, EventArgs e)// ce qu'il se passe quand on choisis le Y
            {
                checkedListBoxX.Items.Clear();
                for (int i = 0; i < comboBoxY.Items.Count; i++)//boucle sur tous les éléments disponibles dans la liste des Y
                {
                    if (comboBoxY.Items[i] != comboBoxY.SelectedItem)//si l'élément de la liste n'est pas sélectionné
                    {
                        checkedListBoxX.Items.Add(comboBoxY.Items[i]);//on l'ajoute à la liste des X
                    }
                }
                checkedListBoxX.Items.Remove("Aucune");
            }
     
            private void checkBoxAll_CheckedChanged(object sender, EventArgs e)
            {
                if (checkBoxAll.Checked == true)
                {
                    for (int i = 0; i < checkedListBoxX.Items.Count; i++)
                    {
                        checkedListBoxX.SetItemChecked(i, true);
                    }
                }
                else
                {
                    for (int i = 0; i < checkedListBoxX.Items.Count; i++)
                    {
                        checkedListBoxX.SetItemChecked(i, false);
                    }
                }
            }
     
            private void buttonOk_Click(object sender, EventArgs e)
            {
                if (checkBoxTreeSize.Checked == true)
                {
                    static FormTreeSize treeSize = new FormTreeSize();
                    treeSize.Show();
                }
            }
        }
    }

  6. #6
    Membre extrêmement actif Avatar de fally
    Homme Profil pro
    Développeur .Net / BI
    Inscrit en
    Novembre 2007
    Messages
    966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur .Net / BI

    Informations forums :
    Inscription : Novembre 2007
    Messages : 966
    Points : 1 173
    Points
    1 173
    Par défaut
    Salut!
    Normalement avec le code que tu as écrit, il devait pas y avoir de problème.
    Juste une petite correction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    private void buttonOk_Click(object sender, EventArgs e)
            {
                if (checkBoxTreeSize.checked)
                {
                    FormTreeSize treeSize = new FormTreeSize();
                    treeSize.ShowDialog();
                }
            }
    Montre-nous alors les autres bout de code liés et n'oublie pas que tu dois cocher ta chekbox avant que ta 2eme form ne s'affiche (la condition "if")

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 19
    Points
    19
    Par défaut
    J'ai supprimé le "== true" et ça ne marche toujours pas.
    Le code de mon deuxième form est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
     
    namespace ArbreGenerique
    {
        public partial class FormTreeSize : Form
        {
            public FormTreeSize()
            {
                InitializeComponent();
            }
        }
    }

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 19
    Points
    19
    Par défaut
    je vous ajoute juste un aperçu de mes deux form. On sait jamais desfois que ça puisse vous aider à m'aider.
    Images attachées Images attachées   

  9. #9
    Membre extrêmement actif Avatar de fally
    Homme Profil pro
    Développeur .Net / BI
    Inscrit en
    Novembre 2007
    Messages
    966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Développeur .Net / BI

    Informations forums :
    Inscription : Novembre 2007
    Messages : 966
    Points : 1 173
    Points
    1 173
    Par défaut
    J'ai supprimé le "== true" et ça ne marche toujours pas.
    C'est juste une petite optimisation de ton code; c'est pas ca le problème
    Je te propose de mettre un breakpoint dans l'événement clik du bouton et vérifie s'il entre dans le "if". Par ailleurs ta form2 ne serait-elle pas à Visible False par hasard?

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 45
    Points : 19
    Points
    19
    Par défaut
    J'ai mis un point d'arrêt mais il ne se passe rien, comme si il ne rentrait jamais dans cette partie du code.
    Je n'est pas de propriété Visible pour mon Form.

    C'est bon j'ai résolu mon problème, c'est juste que mon code n'était pas lié à l'évènement click sur le bouton. Maintenant ça marche nikel.

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 09/06/2008, 09h57
  2. Réponses: 1
    Dernier message: 06/05/2007, 10h43
  3. Réponses: 3
    Dernier message: 02/04/2007, 20h37
  4. Réponses: 4
    Dernier message: 21/04/2006, 22h08
  5. [C#] appeler Close() d'un form à partir d'un autre form
    Par vvvvv dans le forum Windows Forms
    Réponses: 4
    Dernier message: 06/02/2006, 18h36

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