Actualiser une Form à la fermeture d'une autre [Résolu]

Moundir76 286 Messages postés dimanche 3 octobre 2010Date d'inscription 16 mai 2014 Dernière intervention - 18 janv. 2012 à 15:54 - Dernière réponse : Moundir76 286 Messages postés dimanche 3 octobre 2010Date d'inscription 16 mai 2014 Dernière intervention
- 19 janv. 2012 à 16:15
Bonjour,

J'ai une Form avec des infos que je récupère depuis ma BDD. Je suis en VB.NET.
Cependant, je peux cliquer sur un bouton qui va m'ouvrir une nouvelle Form pour ajouter des infos. Je voudrais que lorsque je ferme la deuxième form, la première s'actualise afin d'avoir les infos.

Quelqu'un aurait il une solution ?

Cordialement
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
cs_Le Pivert 5453 Messages postés jeudi 13 septembre 2007Date d'inscriptionContributeurStatut 19 octobre 2018 Dernière intervention - 19 janv. 2012 à 11:12
3
Merci
Bonjour,

C'est simple tu le mets dans l'évenement FormClosing de ton Form comme ceci:

Private Sub Form2_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
'ici le code pour réactualiser ton Form1
    End Sub



Le Pivert

Merci cs_Le Pivert 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de cs_Le Pivert
Meilleure réponse
Polack77 1100 Messages postés mercredi 22 mars 2006Date d'inscription 15 avril 2018 Dernière intervention - 19 janv. 2012 à 11:26
3
Merci
Pour préciser un peut ma réponse :
Quand tu ouvre ton form2 tu ajoute dans ton form1 un événement sur form2 (ensuite a toi de décider quel événement utiliser, Disposed n'est pas forcément le meilleur choix car il n'est appeler que quand ton form est retirer totalement de la mémoire, ce qui n'est pas le cas quand tu ferme un form, désoler grosse fatigue hier)
FormClosed est, je pense, le bonne événement
Le code dans ton form1 :
    Private MyForm2 As Form

    Private Sub OuvreForm2()
        MyForm2 = New Form2
        MyForm2.Show()
        AddHandler MyForm2.FormClosed, AddressOf MyForm2_FormClosed
    End Sub

    Private Sub MyForm2_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs)
        MajForm1()
        RemoveHandler MyForm2.FormClosed, AddressOf MyForm2_FormClosed 'Pour être plus propre mais je ne sait pas si l’intérêt est réel ^^
    End Sub

    Private Sub MajForm1()
        [...]
    End Sub


Voila avec ça tu devrais t'en tirer facilement

Amicalement
1000 recherches sur Google = 1Km de voiture en CO² (réfuté par Google )
1000 recherches sur Forestle = 100 m² de forêt tropicale sauvé .
Surfez écolo

Merci Polack77 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de Polack77
Polack77 1100 Messages postés mercredi 22 mars 2006Date d'inscription 15 avril 2018 Dernière intervention - 18 janv. 2012 à 16:56
0
Merci
Tu ajoute un événement sur ton 1er form :

Quand tu appel le second form tu fait :
AddHandler Form2.Disposed, AddressOf Form2_Disposed

Évidement il faut crée la fonction Form2_Disposed :
Private Sub Form2_Disposed(ByVal sender As Object, ByVal e As System.EventArgs)
        [...]
    End Sub


Rien de plus (tu peut aussi utiliser d'autre événements que Disposed ;) )

Amicalement
1000 recherches sur Google = 1Km de voiture en CO² (réfuté par Google )
1000 recherches sur Forestle = 100 m² de forêt tropicale sauvé .
Surfez écolo
Commenter la réponse de Polack77
Moundir76 286 Messages postés dimanche 3 octobre 2010Date d'inscription 16 mai 2014 Dernière intervention - 19 janv. 2012 à 09:36
0
Merci
Merci pour ta réponse mais cela ne fonctionne pas, ou plutôt devrais je dire : Je n'arrive pas a l'utiliser. En effet je ne vois pas à quoi ça sert.

Car je souhaite que lorsque l'utilisateur clique sur la croix rouge pour fermer la form2, la form1 se mette à jour. Donc je pensais que c’était en rapport avec des évènements.

Peux tu m'éclairer un peu plus sur ta solution car même avec le MSDN, je ne pige pas le principe...

Cordialement
Commenter la réponse de Moundir76
Polack77 1100 Messages postés mercredi 22 mars 2006Date d'inscription 15 avril 2018 Dernière intervention - 19 janv. 2012 à 11:32
0
Merci
Oui la solution de "Le Pivert" est plus simple mais te force a appeler la mise a jour de Form1 depuis Form2.

Je pense que les deux solutions sont valable ^^

Avec ma solution, attention si tu peut ouvrir plusieurs instance de Form2 depuis le même Form1. Tu pourrais avoir (tu auras) des mauvaises surprises. Utiliser une collection de Form2 peut être une solution a ce nouveau problème

Amicalement
1000 recherches sur Google = 1Km de voiture en CO² (réfuté par Google )
1000 recherches sur Forestle = 100 m² de forêt tropicale sauvé .
Surfez écolo
Commenter la réponse de Polack77
Polack77 1100 Messages postés mercredi 22 mars 2006Date d'inscription 15 avril 2018 Dernière intervention - 19 janv. 2012 à 12:10
0
Merci
Pufffffffffff décidément ma dyslexie me joue des tours
Dans la 1ere phrase de ma vidéo, j'ai inverser l'ordre de sélection
Bon on y voie quand même mon problème (mais ras le bol de me louper maintenant )

Amicalement
1000 recherches sur Google = 1Km de voiture en CO² (réfuté par Google )
1000 recherches sur Forestle = 100 m² de forêt tropicale sauvé .
Surfez écolo
Commenter la réponse de Polack77
Polack77 1100 Messages postés mercredi 22 mars 2006Date d'inscription 15 avril 2018 Dernière intervention - 19 janv. 2012 à 12:10
0
Merci
Oups mauvais sujet (comme je le disais RAS LE BOL DE ME LOUPER BESOIN DE VACANCES) ne pas prendre en compte mon message précédant

Amicalement
1000 recherches sur Google = 1Km de voiture en CO² (réfuté par Google )
1000 recherches sur Forestle = 100 m² de forêt tropicale sauvé .
Surfez écolo
Commenter la réponse de Polack77
Moundir76 286 Messages postés dimanche 3 octobre 2010Date d'inscription 16 mai 2014 Dernière intervention - 19 janv. 2012 à 16:15
0
Merci
Merci à vous deux pour vos réponses

Pas grave Polack
Commenter la réponse de Moundir76

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.