Programming/WPF

다른 스레드가 이 개체를 소유하고 있어 호출한 스레드가 해당 개체에 액세스할 수 없습니다

역시인생한방 2015. 2. 4. 12:31

WPF에서는 메인스레드에서 생성한 컨트롤에 다른 스레드가 접근하지 못하도록 되어있습니다.

 

접근하려고 하면 다음과 같은 에러메시지에 직면하죠 :

다른 스레드가 이 개체를 소유하고 있어 호출한 스레드가 해당 개체에 액세스할 수 없습니다.”

 

Dispatcher.Invoke(DispatcherPriority.Normal, new Action(delegate

{

    lblStatus.Content = "동작중"; // 해당 소스

}));

 

다음과 같이 메인 Dispatcher를 통해 라벨내용을 변경시켜주시면 문제없이 돌아갑니다.


출처 : http://inasie.tistory.com/16