HOT프로그래밍

[비트고급]WPF 데이터바인딩 뽀개버리기 본문

#include<LifeStyle>/상식넓히기

[비트고급]WPF 데이터바인딩 뽀개버리기

NetShin 2018. 4. 27. 19:33

오늘은 WPF 데이터바인딩에 대해서 알아보도록 하겠습니다ㅇㅅㅇ

그림으로 대충 그려보면 이런 구조인데 여기서 바인딩 엔진은  

XMAL과 C#에서 등록된 두 속성이 동기화를 담당해서 적당한 타입변환을 수행하도록 합니다





우선 대충 이렇게 xml코드를 작성하고 실행해보면


이렇게 똭!! 윈도우창이 나옵니다

여기서 저희가 알아야 될 코드는


Text="{Binding Name}" << 이부분입니다

그냥 문법이라서 특별한 건 없지만 C#에서 Name이라는 프로퍼티와 이 텍스트 속성과 동기화를 설정해주는 역할을 합니다







여기까지 작성하고 다시한번 코드를 실행했을때 텍스트 박스에 홍길동이 들어가있으면 바인딩에 성공한겁니다
여기서 알아야할 인터페이스가 있습니다.

INotifyPropertyChanged

이 인터페이스는 속성 값이 변경되었음을 클라이언트에 알립니다. 
지금 작성한 코드를 예로 들면 Update라는 버튼을 클릭 했을 때 이름에는 '나' 별명에는 '잘지내'로 텍스트가 바뀌는 걸 볼 수 있는데 이 인터페이스가 없으면 바인딩엔진이 바뀌었는지 인식을 못합니다 



여기까지 데이터바인딩에 대해 알아봤습니다 
데이터바인딩은 다른 곳에서도 비슷한 원리로 기능이 제공되니 알아두면 굉장히 편리할 것 같네요
이만 포스트를 마치겠습니다^^ 좋은 하루되세요!!


Comments