Управление индикатором выполнения родительской формы из дочерней формы.
Всем Привет,
Я хочу управлять индикатором выполнения родительской формы из дочерней формы. Родительская форма имеет одну кнопку и индикатор выполнения. При нажатии на эту кнопку открывается дочерняя форма, и дочерняя форма выполняет свою задачу в течение некоторого времени. По мере выполнения задачи я хочу, чтобы прогресс отображался на панели выполнения родительской формы.
Я установил модификаторы в Public и написал эти строки кода. И все же я не мог сделать это возможным.
Форма 1:
private void button1_Click(object sender, EventArgs e){ Form2 f2 = new Form2(); f2.Show(); }
Форма 2:
public partial class Form2 : Form { public Form2() { InitializeComponent(); Form1 f1 = new Form1(); int j; for (j = 0; j < 100; j++) { f1.progressBar1.Value = j; f1.progressBar1.Refresh(); f1.progressBar1.Update(); Console.WriteLine("j={0}", j); } } }
Что я уже пробовал:
Также попробовал связать код формы 2 с событием кнопки.
public partial class Form2 : Form { Form1 f1 = new Form1(); public Form2() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { int j; for (j = 0; j < 100; j++) { f1.progressBar1.Value = j; f1.progressBar1.Refresh(); f1.progressBar1.Update(); Console.WriteLine("j={0}", j); } } }
[no name]
Вы действительно знаете, что делает "Form1 f1 = new Form1 ();"?
kuharan
объект или экземпляр form1
[no name]
Другими словами, нет. Он создает новый, никогда ранее не виданный и не рассматриваемый экземпляр объекта, который не имеет ничего общего с существующими экземплярами.
kuharan
Да, я ошибался в создании новых объектов. Спасибо.