2013-05-15 3 views
0

나는 매우 간단한 WPF 게임을 가지고있다 : 두 개의 버튼과 몇 개의 레이블이있다. 사용자가 버튼을 클릭 할 때마다 1로 올리는 카운터가 있습니다. 내 윈도우의 모든 라벨에 카운터 값을 표시하고 싶습니다. 코드가 아닌 XAML을 사용하고 싶습니다. 종속성 속성 및/또는 바인딩을 사용하여 어떻게 수행합니까?의존성 속성 사용

답변

0

이 경우 DependencyProperty이 필요하지 않습니다. 매우 간단한 데이터 바인딩 시나리오입니다. MVVM 디자인 패턴을 사용하는 것이 좋습니다. 이는 WPF에서 권장되는 방법이기 때문에 좋습니다.

INotifyPropertyChanged을 구현하고 카운터 속성이있는 ViewModel을 만들어야합니다. 이 속성은 값이 업데이트되었음을 ​​데이터 바인딩 대상에 알리기 위해 Setter에서 NotifyPropertyChanged을 발생시킵니다.

에 바인딩 된 Command을 사용하면 ViewModel의 카운터 속성이 증가합니다. 명령은 ViewModel의 Property로도 노출됩니다.

그리고 레이블이 카운터 값으로 데이터 바인딩되어 속성 값이 변경되면 자동으로 업데이트됩니다.

자세한 내용과 코드 예제는 사용 가능한 많은 리소스 중 하나에서 WPF & MVVM을 읽는 것이 좋습니다. 내가 좋아하는 것 중 하나는 Prism Documentation이고, 구체적으로는 MVVM section of the Prism Documentation입니다. Prism에는이 전체 과정을 단순화 할 수있는 기본 클래스가 포함되어 있습니다.

프리즘을 사용하지 않으려는 경우 많은 대체 MVVM 프레임 워크와 인트로를 사용할 수 있으며 검색 만하면됩니다.

+0

MVVM 모델로 이동하는 대신 내가해야 할 일을 보여줄 수 있습니까? –