изменить label.text на любом этапе цикла - PullRequest
0 голосов
/ 03 февраля 2011

Я хочу, чтобы в этом коде в метке любого шага отображался номер этого шага. В моем коде просто покажи последний номер на этикетке!

я могу сделать это с помощью doevent (), но иногда думаю, что сталкиваюсь с проблемой

enter code here 
    private void button1_Click(object sender, EventArgs e)
    {
        int i = 0;
        while (i<100)
        {
            i++;
            label1.Text = string.Format("Step is :{0}", i);

            Application.DoEvents();
            label1.Invalidate();
            System.Threading.Thread.Sleep(1000);

        }
    }

1 Ответ

0 голосов
/ 03 февраля 2011

Предполагая, что вы хотите, чтобы счетчик обновлял метку, все еще выполняя действия Application.DoEvents (), вам, вероятно, придется запускать задачи в отдельном потоке, иначе код будет выполнен и вернет результат после того, как поток получитбыл возвращен обратно в приложение.

...