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
- 정보처리기능사
- 홈서버
- 개발
- 프로그래밍언어론
- windows
- Java
- study
- 개인서버
- plan
- php
- 자격증
- 매크로
- Developer
- 프로그래밍 언어론
- git
- C
- CodeIgniter
- 개발공부
- html
- 오답풀이
- 방화벽
- Mac
- bootcamp
- cording
- 외부접속
- CSS
- React
- WPF
- knockon
- 220821
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