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 |
Tags
- 오답풀이
- 개인서버
- cording
- 프로그래밍 언어론
- React
- C
- bootcamp
- 프로그래밍언어론
- 자격증
- knockon
- 정보처리기능사
- CSS
- 220821
- 매크로
- windows
- WPF
- 개발
- Mac
- CodeIgniter
- 홈서버
- html
- 외부접속
- php
- 방화벽
- plan
- study
- Java
- Developer
- git
- 개발공부
Archives
- Today
- Total
bunta의 보조기억장치
[C# / WPF] ItemsControl의 Item 중첩 생성 문제 본문
반응형
🤷♂️ 문제 발생
우선 Page에서 ItemsControl을 사용해서 List의 내용을 출력하려고 하였다.
그런데 다른 Page 이동 후 해당 Page로 돌아올 경우 기존에 있던 Item들이 제거되지 않고 중첩되어 생성되는 문제가 발생했다.
💡 문제 접근
1. ItemsControl.Items.Clear()로 삭제 시도
- 디버그 모드 상에서는 Count가 0으로 나오지만 동일 문제 발생함
2. ItemSource로 사용되는 List를 Clear하기
- List 자체는 초기화되었지만 여전히 Item이 살아있는 문제가 발생
문득 이전에 지정된 ItemSource가 살아있어서 그런게 아닐까 생각이 들었다.
그래서 Page가 Unload 될 때 Clear를 진행한 List를 다시 ItemSource로 지정해주니 문제가 해결되었다!
🔧 문제 해결
Page Unload 이벤트 발생 시에 ItemSource로 사용한 List를 우선 Clear시킨 다음 해당 List를 ItemsControl의 ItemSource로 재지정해주면 문제가 해결된다!
예시)
public void PageUnloaded(object sender, RoutedEventArgs e) {
deviceInfos.Clear(); // ItemSource로 사용된 List Clear
deviceLists.ItemsSource = deviceInfos; // 초기화된 List를 ItemsControl의 ItemSource로 재지정
}
반응형
'프로그래밍 > C#' 카테고리의 다른 글
[C# / WPF] Window 최상위에 Border 그림자 적용 시 버벅거리는 문제 (0) | 2024.03.13 |
---|
Comments