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 :

c# remplir dataGridView via autre Form [Débutant]


Sujet :

C#

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 13
    Par défaut c# remplir dataGridView via autre Form
    Salut les développeurs,

    Voila, mon problème est que je cherche à remplir une dataGridView (DgvReponse) (dans FrmRéponse) via une méthode d'un autre Form (FrmEnvoi) :

    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
    private void BtnPing_Click(object sender, EventArgs e)
            {
                Ping ping = new Ping();
     
                Form Réponse = new FrmRéponse();
                Réponse.Owner = this;
     
               #region Méthode
     
               PingReply reply1;
     
               reply1 = ping.Send("172.2.33.241", 1000); // erreur pour test
     
               if (CbBxAS400.Checked == true)
                {
                    this.DgvReponse.Rows.Add("Bordeaux", "AS400", "172.18.33.241", reply1.RoundtripTime.ToString() + " ms");
                }
     
                #endregion
    Visual Studio souligne "DgvReponse".

  2. #2
    Membre chevronné Avatar de pascalCH
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Juillet 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 188
    Par défaut
    ci dessous :

    en rouge les remarques et explications
    en bleu le code à modifier

    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
    private void BtnPing_Click(object sender, EventArgs e)
    // cette méthode est membre de frmEnvoi donc this pointe sur une instance de frmEnvoi
            {
                Ping ping = new Ping();
     
    // Reponse (avec un accent ???? ) va être créé avec FrmReponse comme type instancié, mais connu dans le code
    // comme une simple Form puisque c'est le type déclaré pour la variable
                Form Réponse = new FrmRéponse();
                Réponse.Owner = this;
     FrmReponse Reponse = new FrmReponse(this);
               #region Méthode
     
               PingReply reply1;
     
               reply1 = ping.Send("172.2.33.241", 1000); // erreur pour test
     
               if (CbBxAS400.Checked == true)
                {
    // donc ici, visual ne trouve pas de composant DvgReponse dans this (qui est un FrmEnvoi), c'est normal.
    // de la même façon, Visual ne trouvera pas de DvgReponse dans Reponse puisque son type déclaré est Form et non
    // FrmReponse....
                    this.DgvReponse.Rows.Add("Bordeaux", "AS400", "172.18.33.241", reply1.RoundtripTime.ToString() + " ms");
    
    Reponse.DgvReponse.Rows.Add("Bordeaux", "AS400", "172.18.33.241", reply1.RoundtripTime.ToString() + " ms");
                }
     
                #endregion

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 13
    Par défaut
    Merci pour votre réponse.

    Par contre, j'ai pas compris pour le this car j'ai fait en sorte (enfin je crois) que le FrmRéponse appartienne à FrmEnvoi.

  4. #4
    Membre chevronné Avatar de pascalCH
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Juillet 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 188
    Par défaut
    Citation Envoyé par Aogiri Voir le message
    Par contre, j'ai pas compris pour le this car j'ai fait en sorte (enfin je crois) que le FrmRéponse appartienne à FrmEnvoi.
    Non, la FrmReponse n'est qu'une variable locale dans la méthode et n'est donc visible que dans la méthode.

    pour que la FrmReponse "appartienne" à FrmEnvoi, il faudrait un membre DANS la classe FrmEnvoi du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public class FrmEnvoi : Form
    {
       protected FrmReponse MaReponse = new FrmReponse(this);
     
       private void BtnPing_Click(object sender, EventArgs e)
       {
          // ....
     
          MaReponse.DgvReponse.Rows.Add("Bordeaux", "AS400", "172.18.33.241", reply1.RoundtripTime.ToString() + " ms");
     
          // ....
       }

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 13
    Par défaut
    Ha d'accord, mais quand je met le 'this' entre parenthèses ça marque : " 'MonApplication.FrmRéponse' n'accepte pas un constructeur qui accepte des arguments 1" et " Le mot clé 'this' n'est pas disponible dans le contexte actuel".

  6. #6
    Membre chevronné Avatar de pascalCH
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Juillet 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 188
    Par défaut
    Citation Envoyé par Aogiri Voir le message
    Ha d'accord, mais quand je met le 'this' entre parenthèses ça marque : " 'MonApplication.FrmRéponse' n'accepte pas un constructeur qui accepte des arguments 1" et " Le mot clé 'this' n'est pas disponible dans le contexte actuel".
    oups, autant pour moi, il n'y a pas de constructeur particulier dans FrmReponse acceptant un argument, seul le constructeur par défaut est déclaré (automatiquement), la ligne devient donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    protected FrmReponse MaReponse = new FrmReponse();

  7. #7
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 13
    Par défaut
    Nickel ! Merci bien pascalCH

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 30/04/2013, 21h33
  2. Réponses: 3
    Dernier message: 15/04/2012, 10h17
  3. Remplire DataGridView via une collection
    Par Unreal Time dans le forum Windows Forms
    Réponses: 1
    Dernier message: 19/05/2011, 09h29
  4. Réponses: 22
    Dernier message: 15/10/2009, 09h41
  5. Remplir certaines colonnes datagridview via requete
    Par jpbelmondo59 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 20/09/2009, 18h45

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