Accès aux contrôles de formulaire dans tous les formulaires Problème : Vous disposez de plusieurs formulaires et devez accéder et modifier un contrôle spécifique (par exemple, ListBox) dans un formulaire à partir d'un autre. Existe-t-il une meilleure approche que de créer des setters publics ? Solution proposée : Passer des références de formulaire Au lieu de créer des références de formulaire publiques setters, pensez à passer la référence d’un formulaire à un autre lors de l’initialisation. Cela permet un accès direct aux contrôles et aux propriétés sans avoir besoin de propriétés intermédiaires. Exemple de code : Form1 initialise Form2 et fournit une référence à lui-même. public partial class Form1 : Form { private void button1_Click(object sender, EventArgs e) { Form2 frm = new Form2(this); frm.Show(); } public string LabelText { get { return Lbl.Text; } set { Lbl.Text = value; } } }Copier après la connexion Form2 reçoit une référence à Form1. public partial class Form2 : Form { private Form1 mainForm = null; public Form2(Form callingForm) { mainForm = callingForm as Form1; InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { this.mainForm.LabelText = txtMessage.Text; } }Copier après la connexion En passant la référence via le constructeur, Form2 peut accéder et modifier directement la propriété LabelText de Form1.