2013-03-12 2 views
2

스레드 내에서 UI를 업데이트하는 일반적인 방법은 무엇입니까?스레드 내에서 UI의 레이블 업데이트

예를 들어 사용자 로그인을 처리하는 클래스 내에 메소드가 있습니다. 이 방법에서 UI (메인 스레드)의 레이블 형식으로 로그인 프로세스의 다양한 단계에서 사용자에게 피드백을 제공하고자합니다.

public void userLogin(User _user) 
{ 
    // 1. Navigate to site.com 
    // 2. Update label on UI 
    // 3. Attempt login 
    // 4. Update label on UI 
    // 5. Check login status 
    // 6. Update label on UI 
} 

나는 클래스 자체가 다른 프로젝트에서 사용하고, 다른 프로젝트에 다른 팀 구성원이되기 때문에 방법 내에서 UI를 업데이트하는 코드를 포함하지 않습니다. UI에서 레이블을 업데이트하는 대신 일부 프로젝트에서는 디버깅을 위해 로그 파일에 레이블을 저장하기로 결정할 수 있습니다. 나는 어떤 형태의 결합을 만들고 싶지 않습니다.

최상의 솔루션은 무엇입니까? 이벤트는 갈 길입니까?

btw. .NET 4.5 및 C# 5를 사용하고 있습니다.

답변

2

나는 observer pattern을 따르고 이벤트를 사용하는 것이 최선의 선택이라고 말할 수 있습니다. 그것은 실제로 그들이 사용하도록 고안된 것입니다.

관찰자 패턴은 객체, 주제라고하는 소프트웨어 디자인 패턴의 부양 가족의 목록을 유지, 관찰자라고하고, 보통 중 하나를 호출하여 모든 상태 변경을 자동으로 통지 그들의 방법.

+0

아, 이것이 내가 찾고있는 것입니다. 며칠 전이 패턴에 대해 생각하고 있었고 그 이름을 생각할 수 없었습니다. 고맙습니다. –

관련 문제