Microsoft MVP성태의 닷넷 이야기
load되지않은 아이템 load하는 방법? [링크 복사], [링크+제목 복사],
조회: 11643
글쓴 사람
최준영 (neptjuno at gmail.com)
홈페이지
첨부 파일
 

WPF에서 개발하던중 궁굼한 점이있어서 이렇게 문의하게 되었습니다.
DB에서 data를 가져와 ListView에 바인딩을 하여 사용하고있던 중이였습니다.
ListView에는 GridView를 붙여 사용하였지요
GridView에는 DB에서 가져온 데이터를 Bind하는 컬럼이외에 DataTemplate를 사용한 CheckBox컬럼이 존재합니다.
여기서 할려고 하는것은 DB에서 데이터를 불러와 Binding을 한 후에 특정 data를 검색하여 미리 CheckBox에 Check를 해 놓으려합니다.
CheckBox는 아래와같은 방법으로 가져와서 check를 하였습니다.

ListViewItem lvItem = (ListViewItem)(listViewTargetList.ItemContainerGenerator.ContainerFromIndex(iCount));
ContentPresenter myContentPresenter = FindVisualChild<ContentPresenter>(lvItem);
DataTemplate myDataTemplate = myContentPresenter.ContentTemplate;
CheckBox myCheckBox = myDataTemplate.FindName("DBListCheckCol", myContentPresenter) as CheckBox;
myCheckBox.IsChecked = true;

여기서 문제는 화면에 보여지지않은 ListViewItem을 가져올경우 아직 load가 되지않은 상태여서 ListViewItem이
null로 넘어오는 것입니다.

저 Item을 강제 로드하거나 다른방법으로 check할수있는 방법이있나요?

전부 Check하는것이 아니라 특정 item을 check해야 하기 때문에 DataTemplate에서 true로 binding하지 않았습니다.
조언 부탁드립니다.








[최초 등록일: ]
[최종 수정일: 5/24/2010]


비밀번호

댓글 작성자
 



2010-05-25 11시36분
WPF 안해본지 꽤 되어서 ^^ 기억이 가물가물한데요.

방법이 2가지 정도 있을 수 있습니다.

첫번째는, GriView의 Item 항목에 대한 가상화를 끄는 것입니다. (제가 얼핏 기억나기로는 속성으로 제공이 되었던 것 같습니다.)
두번째는, 데이터 바인딩을 하는 Model 타입에 CheckBox를 위한 별도의 속성을 추가하는 것입니다. 만약 DB 로부터 바로 가져오는 것이라면 그것을 포함하면서 bool 형식의 속성을 하나 더 정의하시면 되겠지요.
kevin25

1  2  3  4  5  6  7  8  9  10  11  12  13  [14]  15  ...
NoWriterDateCnt.TitleFile(s)
5594mira...1/25/20224671안녕하세요 try~catch 와 SuspendLayout~ResumeLayout 간 호출 문의드립니다! [2]
5593C#스터디1/12/20225577TaskAwaiter 구현 질문 입니다. [1]
5591유지킴12/24/20215198outofmemory in 32bit [2]파일 다운로드1
5590kss12/23/20214644포인터 메모리 에러 [1]
5589초급12/22/20214843c# -> 라즈베리파이(db 접속)시 에러 발생 [7]
5588김지신12/21/20214784안녕하세요 String 변수 참조 주소 질문입니다. [2]
5587이완호12/17/20215905C# SharpDX 화면 캡쳐 관련해서 질문 드립니다. [1]
5586조미김12/16/20215078윈폼에서 메인 스레드와 UI 스레드의 차이점 질문드립니다 [4]
5585김준희12/16/20215860C# 윈폼 TCP/IP 데이터 연속으로 보낼때 [1]
5583난인간이다12/10/20214848.net 6 dynamic pgo 활성화 및 예상되는 문제 [1]
5582김준희12/9/202112189C# TCP/IP 통신시 연결 끊김 에러 [1]
5581김시준12/9/20215392닷넷에서 파일 delete 함수는 왜 비동기가 없는 것인가요? [2]
5580카짜프로...12/7/20216621패턴매칭 -튜퓰비교에 관한 오류사항과 궁금증 [1]파일 다운로드1
5579카짜프로...12/6/2021590811.12 메서드 중복정의에 대한 질문 [1]
5577감사합니...11/30/20214910visual studio 2015 update 3를 다운받을려고 하는데 x64/x86 차이점이 뭘까요? [2]
5576노홍구11/29/20214796C# 으로 USB 스캐너 프린터 리셋하기 입니다. [1]
5575베라11/23/20214871event handler 관련 문의 [2]
5574박원웅11/22/20215167닷넷 프레임워크 산출물의 배포시 해당 환경에 프레임워크 버전이 설치되어 있지 않는 경우를 고려한 배포방법은? [3]
5573mijin11/21/20215007System.NullReferenceException 에 대한 질문 [1]
5572김현진11/21/20215180C# list.Clear() 호출에 대한 문의 드립니다. [4]
5571한예지 donator11/18/20215122무설치 프로그램 원리가 궁금합니다. [2]
5570초보11/16/20215630주식데이터 초당 수신 건수를 구하고 있는데 처리속도가 느려서요 [2]
5569카짜프로...11/14/20216506381페이지 UTC에대한 언급이 그리니치 천문대 시간으로 되어있는게 맞나요? [1]
5568카짜프로...11/14/20216570그림 5.20, 그림 5.22 언급 오류 [1]
5567Edun11/2/20215480쿼리문을 코드로 어떻게 처리할 수 있을까요? [2]
5566민성10/26/20215312Linq에 관해서 [1]
1  2  3  4  5  6  7  8  9  10  11  12  13  [14]  15  ...