Komunikacja między więcej niż dwoma formami

0

Cześć.

Mam dwie formy między którymi nie mam problemu z komunikacją.

    public partial class Form1 : Form
    {
        Form2 f2;
        public Form1()
        {
            InitializeComponent();
            f2 = new Form2(this);
        }

        private void button1_Click(object sender, EventArgs e)
        {
            this.Hide();
            f2.Show();
        }
    }
    public partial class Form2 : Form
    {
        Form1 f1;
        Form3 f3 = new Form3();
        public Form2(Form1 form)
        {
            InitializeComponent();
            f1 = form;
        }

        public void setLabel(string value)
        {
            this.label1.Text = value;
        }

        private void bForm2_Click(object sender, EventArgs e)
        {
            this.Hide();
            f3.Show();
        }
    }

Problem polega na tym że po utworzeniu trzeciej formy, za pomocą przycisku chcę odwołać się do etykiety w formie 2, i zmienić w niej tekst za pomocą utworzonej metody. Czy ktoś mógłby mi napisać jak powinien wyglądać poprawnie utworzony obiekt w formie 3 za pomocą którego mógłbym się odwołać do metod w Formie 2?

    public partial class Form3 : Form
    {
        public Form3()
        {
            InitializeComponent();
        }

        private void bForm3_Click(object sender, EventArgs e)
        {
            
        }
    }

Z góry dziękuję za pomoc.

poprawienie tytułu wątku i dodanie znaczników <code class="csharp"> - furious programming

0

Statyczna klasa z ze statycznym słownikiem, do którego dodajesz każdego Forma w jego konstruktorze.

0

Nie bardzo rozumiem jak to ma wyglądać. Możesz to bardziej opisać ?

0

Nie wiąż form ze sobą bezpośrednio, bo w ten sposób tylko narobisz sobie kłopotów. Zastosuj wzorzec Model View Presenter, wtedy problem z komunikacją między formami odpadnie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1