L'Accès Principal Formulaire De Formulaire Enfant
J'ai un problème simple: j'ai un formulaire principal dans win-formes/c#. Il a une listbox lié à une base de données.
Lorsque je clique sur un bouton d'un formulaire est créé.
Lorsque je clique sur un bouton sur le formulaire d'enfant, je veux appeler une méthode qui existe dans le formulaire principal, qui met à jour la zone de liste ou, alternativement, lorsque l'enfant formulaire se ferme, à l'appel de cette fonction.
Est-ce possible??
- êtes-vous essayer de mettre en œuvre une boite contenant
Save
etapply
boutons?
Vous devez vous connecter pour publier un commentaire.
Scénario 1: Appeler une méthode dans le Formulaire Parent sur cliquez sur le bouton de formulaire enfant.
Créer un
Event
de l'Enfant dans le Formulaire. D'élever cet événement sur certains de Clic de Bouton etc. Abonnez-vous à cet événement dans votre Formulaire Parent et d'appeler la mère de la méthode du formulaire à l'intérieur de ça.Scénario 2: Appeler une méthode dans le Formulaire Parent lorsque l'Enfant est fermé.
Poignée de la
FormClosed
ouFormClosing
cas de Formulaire Enfant dans le Parent de la forme et de l'appel de la mère de la méthode du formulaire à l'intérieur de ça.Il existe de nombreuses façons de réaliser cela, mais voici une façon simple. Dans votre formulaire principal, lorsque vous créer et afficher un formulaire enfant, de faire comme ceci:
Puis, quand vous avez besoin d'appeler une méthode dans le formulaire principal de l'enfant forme, utilisez un code comme ceci (ce qui suppose que votre formulaire principal est de type
MainForm
):Façon plus complexe, serait d'utiliser une forme de l'injection de dépendance, où vous passerez une référence au formulaire parent (ou, plus correctement, de son interface) dans le constructeur du formulaire enfant. Mais la façon décrite ci-dessus est simple et probablement assez efficace pour vos besoins (et il en fait est une forme de dépendance à l'injection elle-même, en quelque sorte).
ShowDialog(this);
- le code du travail sera le même de toute façon.