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 :

communication entre un Form et un UserControl


Sujet :

C#

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 18
    Points
    18
    Par défaut communication entre un Form et un UserControl
    Bonjour,

    J'ai un Form1 contenant une GridView listant des sociétés.

    Lorsque je double clique sur une société, un Form2 s'ouvre, contenant un UserControl permettant (entre autres) d'afficher et modifier les infos de la société.

    Lorsque je valide et quitte Form2, les infos de la société sont bien modifiées
    grâce à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sOCIETETableAdapter.Update(dsSociete.SOCIETE);
    On retombe donc sur mon Form1 qui n'a pas pris en compte les changements relatifs à Form2, bien que la DataTable ait été MAJ.

    Comment faire pour que l'enregistrement des données dans mon Form2 entraine le rafraichissement des données du Form1?

    Merci d'avance.

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2005
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2005
    Messages : 482
    Points : 625
    Points
    625
    Par défaut
    salut,
    ton gridview et rempli via sa propiété DataSource ?
    as tu essayé un gridview.Refresh() ?

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 18
    Points
    18
    Par défaut
    Bonjour et merci.

    Oui mon gridview est rempli via le DataSource.

    Ensuite, voici le code derriere le bouton Valider appartenant à Form2.
    Ce que j'aimerais c'est quelquechose qui aille chercher ma gridview appartenant à Form1 et fasse un .Fill (ou un refresh ca doit revenir au même)

    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
     
    private void simpleButton1_Click(object sender, EventArgs e)
            {
                try
                {
                    sOCIETEBindingSource.EndEdit();
                    if (MessageBox.Show("Voulez-vous Sauvegarder les données ?", "Sauvegarde", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        sOCIETETableAdapter.Update(dsSociete.SOCIETE);
                        cATEGORIE_SOCIETETableAdapter.Update(dsSociete.CATEGORIE_SOCIETE);
                        sOCIETES_LIEESTableAdapter.Update(dsSociete.SOCIETES_LIEES);
                        MessageBox.Show("Les données ont été enregistrées dans la base");
                    }
                }
                catch (Exception ex) { MessageBox.Show(ex.Message); }
            }
    Donc si je fais un refresh à ce niveau la ça ne rafraichira pas la gridview de Form1..

    Merci

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 133
    Points : 47
    Points
    47
    Par défaut
    A mon avis tu dois recharger ta table au niveau de Form1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sOCIETETableAdapter.Fill(dsSociete.SOCIETE);

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par solitude Voir le message
    A mon avis tu dois recharger ta table au niveau de Form1

    sOCIETETableAdapter.Fill(dsSociete.SOCIETE);
    Oui c'est ça mais comment faire pour recharger une gridView dans Form1 alors qu'on clique sur un bouton contenu dans Form2?

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 133
    Points : 47
    Points
    47
    Par défaut
    essaie d'utiliser un datasource partagé pour les deux form

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 18
    Points
    18
    Par défaut
    Comment faire?

    Pourtant, ça me parait trivial ce que je demande, je pense qu'il y a une solution plus simple.

    Pour résumer, la j'en suis simplement à vouloir utiliser une classe Form1 depuis une autre Form2, bref juste faire un Fill depuis Form2 qui agirai sur Form1 (ou appeler une méthode je ne sais pas).

    Si quelqu'un a une expérience supérieure à la mienne ( 2 semaines) en .Net...

    Merci beaucoup

  8. #8
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 31
    Points : 18
    Points
    18
    Par défaut
    Si quelqu'un est inspiré...
    Je n'ai toujours pas trouvé.

    Je vient de me renseigner sur les délégués

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public delegate void EventHandler();
    qui je pense peut etre une solution?

    Merci

Discussions similaires

  1. Communication entre windows form app et android
    Par tiloup367 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 12/09/2014, 01h03
  2. [débutant] communication entre 2 form
    Par isoman dans le forum Windows Forms
    Réponses: 4
    Dernier message: 15/12/2008, 14h41
  3. Communication entre une Form et une boite de dialogue
    Par mhamdi45 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 26/10/2008, 10h06
  4. communication entre 2 forms
    Par bellak dans le forum Windows Forms
    Réponses: 6
    Dernier message: 04/08/2008, 15h46
  5. [VB.NET] Communication entre forms
    Par alex69 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 23/06/2005, 11h27

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