2011-04-22 7 views
0

클래스 Target과 다른 클래스의 정적 속성 인 points이 있습니다. 사용자가 타겟을 공격 할 때마다 포인트를 늘리고 싶습니다. 내가 points을 다른 정적 클래스에 넣는 이유는 각 Target 개체가이 개체에 액세스 할 수 있기 때문입니다. 문제는 포인트를 표시하는 텍스트 블록이 각 대상 객체가 아니라 MainPage에 있다는 것입니다. 내 XAML을 정적 속성에 바인딩 할 수 없기 때문에 각 대상 개체가 어떻게하면 MainPage에서 포인트 텍스트 블록을 업데이트해야한다는 것을 알 수 있도록 만들 수 있습니까? 어떤 조언을 주셔서 감사합니다오브젝트가 메인 페이지로 메시지 보내기

답변

1

여기에 MVVM 패턴을 완전히 적용 할 수 있습니다. 기본 창에 바인딩 된 ViewModel이있는 경우 속성이 변경되고 보기 (데이터가 연결된 모든 연결된 창)이 자동으로 업데이트 (재 바인딩) 될 때마다 알림을 발생시킬 수 있습니다. .

Laurent Bugnion의 MVVM Light 프레임 워크를 확인하는 것이 좋습니다. 그것은 당신을 위해 한 많은 배관 공사를 가지고 있습니다, 그래서 당신의 편에서 수행되어야 할 모든 것은 부품들을 모아서 정확하게 묶는 것입니다. 상황에 대한 검사의 가치

일부 자원 : (여전히 methodoloogy로 실버 라이트에 적용)

당신이 샘플을해야하는 경우를 살펴 here을.

0

같은 이름 공간에 클래스 대상과 AnotherClass.point가 있습니까? 그렇다면 다음과 같은 도움이 될 수 있습니다.

/* In Window class */ 
Window w = new Window(); 

/* function where Target get hit */ 
w = this; 
/* code to update points */ 
w.textbox1.Text = AnotherClass.points.ToString();