쓰레드를 이용하여 프로그램을 개발하다보면 구문상 오류가 없는 상태에서 프로그램을 실행하다보면 예기치 않은 오류를 접하셨을 거에요?
예를 들면, 텍스트 박스에 단순히 값만 표시하는데 Exception 오류가 발생이 됩니다.
오류 내용은 Control.Invoke 관련 Exception이었을 겁니다.
이럴 경우 해결 할 수 있는 예제코드 이오니 참고해보세요..
delegate void valueDelegate(string value);
delegate void clearDelegate(TextBox tb);
//텍스트박스 초기화
private void ClearSet(TextBox tb)
{
if (tb.InvokeRequired)
{
tb.Invoke(new clearDelegate(ClearSet), tb);//선언한 delegate 사용하며 함수명과, 파라미터 값 선언
}
else
{
tb.Text = "";
tb.SelectAll();
tb.Focus();
}
}
//텍스트박스에 값 적용
private void stringData(string Data)
{
if (textBox.InvokeRequired)
{
textBox.Invoke(new valueDelegate(stringData), Data);//선언한 delegate 사용하며 함수명과, 파라미터 값 선언
}
else
{
textBox.Text = Data;
}
}
'C#' 카테고리의 다른 글
[C#]ListView row index 구하기 예제 (0) | 2016.02.03 |
---|---|
[C#/PDA]PDA에서 HTTP 통신으로 자료 수신하기 예제 (0) | 2016.02.03 |
[C#]조건 연산자를 이용한 간단한 개발 팁 예제(?:) (0) | 2016.01.29 |
[C#/PDA]PDA에서 MySQL 접속 예제 (0) | 2016.01.29 |
[C#]File 클래스를 이용한 파일 생성 예제 (0) | 2016.01.29 |