Как обрабатывать управление формой в функции потока на С#? ⇐ C#
-
Anonymous
Как обрабатывать управление формой в функции потока на С#?
Мой программный код C# выглядит следующим образом. Я получаю сообщение об ошибке «System.InvalidOperationException».
Private void Form1_Load (отправитель объекта, EventArgs e) { это.CenterToScreen(); this.Size = новый размер (progressBar.Width, ProgressBar.Height); вар thread2 = новый поток (новый ThreadStart (() => StartPrinting (это))); поток2.Начать(); } статическая пустота StartPrinting (Form1 dlg) { dlg.progressBar.Step = 1; dlg.prdogressBar.Minimum = 0; dlg.progressBar.Максимум = 3; } Очевидно, на эту переменную не ссылаются. однако следующий код не является проблемой.
Private void Form1_Load (отправитель объекта, EventArgs e) { это.CenterToScreen(); this.Size = новый размер (progressBar.Width, ProgressBar.Height); прогрессБар.Шаг = 1; prdogressBar.Минимум = 0; прогрессБар.Максимум = 3; вар thread2 = новый поток (новый ThreadStart (() => StartPrinting (это))); поток2.Начать(); }
Мой программный код C# выглядит следующим образом. Я получаю сообщение об ошибке «System.InvalidOperationException».
Private void Form1_Load (отправитель объекта, EventArgs e) { это.CenterToScreen(); this.Size = новый размер (progressBar.Width, ProgressBar.Height); вар thread2 = новый поток (новый ThreadStart (() => StartPrinting (это))); поток2.Начать(); } статическая пустота StartPrinting (Form1 dlg) { dlg.progressBar.Step = 1; dlg.prdogressBar.Minimum = 0; dlg.progressBar.Максимум = 3; } Очевидно, на эту переменную не ссылаются. однако следующий код не является проблемой.
Private void Form1_Load (отправитель объекта, EventArgs e) { это.CenterToScreen(); this.Size = новый размер (progressBar.Width, ProgressBar.Height); прогрессБар.Шаг = 1; prdogressBar.Минимум = 0; прогрессБар.Максимум = 3; вар thread2 = новый поток (новый ThreadStart (() => StartPrinting (это))); поток2.Начать(); }
Мобильная версия