Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 동시insert
- TypeScript
- pure CSS
- 개발
- axios
- 브랜치 삭제
- insert와 update 한꺼번에 하기
- chatbot
- Python
- 파이썬 챗봇
- util fuction
- rebase -i
- vuejs
- 챗봇
- 리액트네이티브
- 시차애니메이션
- 로컬 브랜치
- c#
- 텔레그램 챗봇
- insert into
- EpPlus
- SQL
- 다중insert
- oracle
- frontend
- 시차 스크롤
- reactnative
- git
- git command
- local branch
Archives
- Today
- Total
DOG FOOT
[C#/WPF] TabControl ItemsSource 바인딩 시 ViewModel을 상속받지 않고 생성자를 호출하는 문제 해결. 본문
개발새발/C#
[C#/WPF] TabControl ItemsSource 바인딩 시 ViewModel을 상속받지 않고 생성자를 호출하는 문제 해결.
퀸디 2019. 4. 1. 17:57개발하다보니 또 난관이다.
Tab Control에 Items Source로 ObservableCollection<ViewModel>을 바인딩했다.
생성될 각 탭에 대한 화면은 UserControl로 정의하고 MainView에 DataTemplate을 적용해주었다.
문제는 바인딩된 리스트에 자식을 만들면 그 값이 바로 View로 넘어가는 게 아니라 해당 값으로 View에 뿌려줄 인스턴스를 재생성하는 것이다. 그렇게 되면 View에서 만들어진 인스턴스와 메인 뷰모델이 가진 인스턴스에 차이가 발생한다.
+++
알고 보니 내가 DataContext를 설정 해 주어서 2번 로드 되는 거였다.
UserControl에 설정되어 있던 DataContext 항목을 삭제하면 동적으로 생성된(Observable Collection 바인딩 된) ViewModel에 자동 바인딩 되므로 아무것도 해결할 필요가 없어진다.
뻘짓이었다...
'개발새발 > C#' 카테고리의 다른 글
[C#/WPF] 숫자만 입력되는 소수점 TextBox (0) | 2019.07.02 |
---|---|
[C#] SaveFileDialog을 이용하여 Excel파일로 DataTable 저장하기. (0) | 2019.04.09 |
[C#/WPF] Extended WPF Toolkit 사용하기. (0) | 2019.04.04 |
[C#] Dictionary : Key Type으로 Key값 직접(색인) 접근하기. (0) | 2019.03.27 |