J'ai un problème concernant les délégués dans une application Windows Forms.
Il y a deux formulaires:
-
le formulaire principal, qui a un bouton nommé "Paramètres".
-
le formulaire "paramètres", c'est le formulaire "enfant".
Lorsque je clique sur le bouton "Paramètres" dans le formulaire principal, cela ouvre une instance du formulaire Paramètres.
Mon problème est que j'ai besoin de passer une variable au formulaire Paramètres, lorsque je l'ouvre. Ainsi, le nouveau formulaire affichera le texte de la variable. Je ne sais pas comment récupérer l'information dans le formulaire "enfant" Paramètres. J'ai suivi un tutoriel en ligne et n'ai pas compris comment lire les informations dans le formulaire de destination.
Voici ce que j'ai fait jusqu'à présent, le code dans le formulaire principal:
public partial class MainForm : Form
{
///
/// Délégué pour envoyer des données entre les formulaires
///
public delegate void PageInfoHandler(object sender, PageInfoEventArgs e);
///
/// Événement du délégué
///
public event PageInfoHandler PageInfoRetrieved;
// Autres choses, événements, etc.
private void toolStripBtnSettings_Click(object sender, EventArgs e)
{
PageInfoEventArgs args = new PageInfoEventArgs(SomeString);
this.OnPageInfoRetrieved(args);
SettingsForm settingsForm = new SettingsForm();
settingsForm.ShowDialog();
}
private void OnPageInfoRetrieved(PageInfoEventArgs args)
{
if (PageInfoRetrieved != null)
PageInfoRetrieved(this, args);
}
}