2010-04-01 6 views
3

어떻게하면 Windows 양식을 포함하는 별도의 스레드에 텍스트를 편집하는 코드가 속한 경우 Windows 양식 요소의 텍스트를 편집 할 수 있습니까?크로스 스레드 Winforms 컨트롤 편집

크로스 스레드 작업이 유효하지 않습니다. 'textBox1'컨트롤이 생성 된 스레드가 아닌 다른 스레드에서 액세스했습니다.

고맙습니다.

+0

코드를 제시해주십시오 .... 우리가 당신을 도울이 충분하지 않습니다으로! – t0mm13b

+0

http://stackoverflow.com/questions/661561/how-to-update-the-gui-from-another-thread-in-c – Anthony

답변

23

이 같은 Control.Invoke 방법을 사용해야합니다

textbox1.Invoke((MethodInvoker)(() => 
    { 
    textbox1.Text="some text"; 
    })); 

확인이 문서도 : Threading in UIs

+0

클래스 내에'Action y;'를 삽입하고 'label1.Invoke'코드를 실행하십시오. (y =() => label1.Text = "모든 텍스트"); –

관련 문제