WCF가 예전에 사용하던 방식과 달라 이것저것 테스트하다가 간만에 뜬 에러 크로스 스레드 작업이 잘못되었습니다. 아.... 예전에 WPF에서 한번 소개 하긴 했었습니다만 윈폼에서는 약간 다르죠. (참고 : [WPF] 다른 쓰레드에서 UI쓰레드 접근하기 - Dispatcher.Invoke) 연관글 영역 1. 일반적인 방법 일반적으로 인보크(Invoke)를 사용하려면 델리게이트(Delegate)를 만들어야 합니다. (참고 : MSDN - Control.Invoke 메서드) 일반적인 방법에서는 다음과 같은 순서로 인보크를 사용합니다. 1) 델리게이트 선언 2) 델리게이트에 연결할 함수 생성 3) 델리게이트와 생성한 함수 연결 4) 인보크로 델리게이트 호출 //1) 델리게이트 선언 /// /// 델리게이트 선언..
간만에 WPF를 하는데.....버튼으로 테스트해 보니 프로그램이 잘 돌아가서 타이머를 하나 만들어서 주기적으로 실행하려고 돌렸는데...에러가 퐝~ 연관글 영역 1. 원인많은 UI 구성 요소에서 호출 스레드가 필요하므로 해당 스레드는 STA여야 합니다.혹은"다른 스레드가 소유하고 있는 오브젝트에 현재 스레드가 접근할 수 없다"(The calling thread cannot access this object because a different thread owns it.) 이런 식의 오류가 나기도 합니다. 하도 오랜만에 WPF를 해서 감이 없네요;;WPF나 실버라이트에서 타이머는 다른 스레드기 때문에 UI스레드에 접근할 때 에러가 납니다. 2. 해결 방법이럴 때는 디스패처(Dispatcher) 인보크를 ..