>  기사  >  백엔드 개발  >  C# WinForm 크로스 스레드 액세스 제어에 대한 자세한 그래픽 및 텍스트 설명

C# WinForm 크로스 스레드 액세스 제어에 대한 자세한 그래픽 및 텍스트 설명

黄舟
黄舟원래의
2017-09-16 11:09:533922검색

문제가 나타납니다. WinForm에서 메인 스레드의 제어를 처리할 때 그림과 같은 오류 대화 상자가 나타납니다.

方 솔루션:

: 메인 스레드 UI 컨트롤의 UI 컨트롤에 대한 안전 검사를 제거합니다. 다음을 사용하세요.

 Control.CheckForIllegalCrossThreadCalls = false;

: 위임 사용 UI 제어 작업은 스레드의 메시지 대기열을 푸시합니다. 사용되는 메서드는 Invoke 메서드와 BegininVoke 메서드입니다. 후자는 비동기식입니다. 비동기식 BegininVoke 메서드를 사용하는 것은 동기식 Invoke 메서드와 동일합니다. Invoke 메서드를 BegininVoke 메서드로 바꾼 다음 POST를 사용하여 액세스 UI 제어 메서드를 하위 스레드에 있는 UI 컨텍스트의 메시지 큐에 푸시합니다. 또는 Class, 별도의 스레드에서 실행됩니다. 다음 그림은 공식 웹사이트 설명에서 복사됩니다.                   별도의 스레드에서 실행됩니다. :

winform TextBox 컨트롤에 추가하는 이유 그런 다음 다른 스레드를 통해 UI 기본 스레드의 제어에 액세스하면 오류가 보고되지 않고 정상적으로 통과됩니까? ? ? 전문가님들의 조언 부탁드립니다! ! ! 사진은 다음과 같습니다. 下 下 下

위 내용은 C# WinForm 크로스 스레드 액세스 제어에 대한 자세한 그래픽 및 텍스트 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.