У меня есть приложение, которое имеет основную форму и использует обработчик событий для обработки входящих данных и отражения изменений в различных элементах управления в главной форме. Это отлично работает.
У меня также есть другая форма в приложении. В любой момент времени может быть запущено несколько экземпляров этой второй формы.
Я хотел бы, чтобы каждый экземпляр этой второй формы слушал обработчик событий в главной форме и обновлял элементы управления в своем экземпляре второй формы.
Как бы я это сделал?
Вот пример кода. Я хочу получить информацию из обработчика событий the_timer_Tick для обновления каждого экземпляра SecondaryForm.
public partial class Form1 : Form
{
Timer the_timer = new Timer();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
the_timer.Tick += new EventHandler(the_timer_Tick);
the_timer.Interval = 2000;
the_timer.Enabled = true;
}
void the_timer_Tick(object sender, EventArgs e)
{
// I would like code in here to update all instances of SecondaryForm
// that happen to be open now.
MessageBox.Show("Timer ticked");
}
private void stop_timer_button_Click(object sender, EventArgs e)
{
the_timer.Enabled = false;
}
private void start_form_button_Click(object sender, EventArgs e)
{
SecondaryForm new_form = new SecondaryForm();
new_form.Show();
}
}