예를 들어 Windows Form에는 2 개의 명령 단추와 텍스트 상자가 있습니다. 명령 단추 1을 클릭에
이 텍스트 상자 값은 1에서 1000000코드 실행 중 Windows Forms에 액세스 할 수 없음
이런 일이 발생하는 동안 말할 증가 계속, 나는 명령 단추 2.
내가 할 수있는 포함, 양식에 아무 곳이나 클릭 할 수 없습니다입니다 카운터가 1000000에 멈춘 경우에만 양식에 다시 액세스하십시오.
이 문제에 대해 조언하십시오.
또한 *.Show();
방법을 사용하여 모덜리스 형식을 사용해 보았습니다.
이것은 TextBox에서 값을 가져 오는 코드입니다.
for (int i = 0; i <= 10000; i++)
{
Console.WriteLine(i);
this.textBox1.Text = Convert.ToString(i);
label2.Focus();
this.textBox1.Focus();
}
UI에서 코드를 모두 실행하고 있기 때문에 디스플레이 업데이트를 처리 할 수 없기 때문입니다. –
응용 프로그램은 메시지를 펌핑 할 때만 응답합니다. 코드의 중간에 루프가 돌아가는 중일 때 메시지를 펌프로 보낼 수 없습니다 (그렇지 않으면!) –
코드가 UI 스레드에서 실행 중이면 애플리케이션이 실행될 때까지 차단됩니다. 코드가 실행을 마쳤습니다. 이것을 별도의 스레드에서 실행하기위한'Task' 클래스를보십시오. http://msdn.microsoft.com/en-us/library/system.threading.tasks.task(v=vs.110).aspx –