Microsoft MVP성태의 닷넷 이야기
load되지않은 아이템 load하는 방법? [링크 복사], [링크+제목 복사],
조회: 17432
글쓴 사람
최준영 (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

... 76  77  78  79  80  81  82  83  84  85  86  87  88  89  [90]  ...
NoWriterDateCnt.TitleFile(s)
213궁금이6/18/200512457Winform 형태의 NTD에서 사용자 로그인 성공 여부 정보 유지하는 방법 [1]
212궁금이6/16/200510451ActiveX 컨트롤이 NTD에 이상이 없는지요? [1]
211류성태6/15/200511042smart client에 관하여.... [1]
206헤커의작...6/14/200510014[질문] 안녕하세요. 성태님의 홈페이지에서 화면전환시 처리되는 것에 관련된 건 [3]
205김종욱 6/12/200510568com+ 에서 서버 소켓을 열고 싶고요... com+에서 thread는 어떻게 돌리는지 알고 싶습니다
209정성태6/14/200510557    답변글 [답변]: com+에서 서버 소켓을 열고 싶고요... com+에서 thread는 어떻게 돌리는지 알고 싶습니다
204정현일6/9/200510763Smart Client 실행시 SecurityException파일 다운로드1
208정성태6/14/200511158    답변글 [답변]: Smart Client 실행시 SecurityException [1]
203나그네6/9/200510983태오 사이트 Smart Client 강좌중에서요
207정성태6/14/200510599    답변글 [답변]: 태오 사이트 Smart Client 강좌중에서요
210나그네6/15/200510800        답변글 [답변]: [답변]: 태오 사이트 Smart Client 강좌중에서요파일 다운로드1
198이지훈6/2/2005100312003이랑 2005랑 함께 사용하는 방법이 없을까요?
201정성태6/6/200510627    답변글 [답변]: 2003이랑 2005랑 함께 사용하는 방법이 없을까요?
197이지훈6/2/2005106952005 에서 컴포넌트 제작
200정성태6/6/200510189    답변글 [답변]: 2005 에서 컴포넌트 제작
196김종욱5/24/200511359익스플러 툴 벤드 제작... for .NET [1]파일 다운로드1
199정성태6/6/200510830    답변글 [답변]: 익스플러 툴 벤드 제작... for .NET
202김종욱6/9/200511347        답변글 [답변]: [답변]: 익스플러 툴 벤드 제작... for .NET [1]
194홍지철5/18/200510556IE에서 Winform control embedded작성시 문제점
195정성태5/19/200511143    답변글 [답변]: IE에서 Winform control embedded작성시 문제점
192헤헤5/13/200510740이것좀봐주세요
193정성태5/13/20059849    답변글 [답변]: 이것좀봐주세요
186기범5/9/200510437안녕하세요2
187정성태5/9/200510921    답변글 [답변]: 안녕하세요2
184기범5/9/200510375안녕하세요
185정성태5/9/200510754    답변글 [답변]: 안녕하세요
... 76  77  78  79  80  81  82  83  84  85  86  87  88  89  [90]  ...