본문 바로가기
실버라이트
2013.04.30 15:19

실버라이트 MVVM패턴 파헤쳐보자 (미완)

다물칸 주소복사
조회 수 2369 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
Extra Form
구분 팁&트릭
출처 내가작성
?

MVVM패턴으로 개발 시 유념해야 할 사항을 개발하면서 메모하고 있습니다.

계속 업뎃 하고 추후, 정리 들어갑니다.

 

 

ViewModel에 들어가야 될 기본적인 루틴

 

using System.ComponentModel; 

public class ViewModelLogin : INotifyPropertyChanged

 

 

 

 

public event PropertyChangedEventHandler PropertyChanged;

 

public void OnPropertyChanged(string propertyName)
     {
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
     }

 

바인딩 시 기억해야 할 것.

 

사용자 입력이 필요한 경우 바인딩 시 Two Way로 설정해야 한다.

 

ViewModel에서 이벤트 발생시키는 방법

 

ViewModel에 추가

public event EventHandler<EventArgs> LoginCompleteEvent;

public void onLoginCompleteEvent()
     {
            if (LoginCompleteEvent != null)
            {
                LoginCompleteEvent(this, new EventArgs());
            }
     }

 

onLoginCompleteEvent(); 를 발생시키고자 하는 곳에 추가한다.

 

 

Xaml에 추가

 

<Grid.DataContext>
            <ViewModel:ViewModelLogin LoginCompleteEvent="ViewModelLogin_LoginCompleteEvent" />
     </Grid.DataContext>

 

XAML의 C#에서 ViewModel 참조하는 방법

 

Cs에 추가

 

   public ViewModel.ViewModelStat ViewModel
        {
            get { return this.DataContext as ViewModel.ViewModelStat; }
            set { this.DataContext = value; }
        }

 

위 항목 추가 후, ViewModel에 추가된 Public 함수를 참조해서 사용할 수 있다.