문제

목록 컨트롤 내에 많은 항목이 있습니다. 각 항목이 항목 유형에 따라 다른 항목 템플릿을 갖기를 원합니다. 따라서 목록의 첫 번째 항목은 대변 유형이므로 ItemTemPlatea로 렌더링되기를 원합니다. 두 번째 항목은 ObjectB 유형이므로 렌더링을위한 ItemTemPlateB를 갖기를 원합니다. 현재 나는 ItemTemplate 설정 만 사용하여 하나의 템플릿을 모두 정의 할 수 있습니다. 이것을 달성하는 방법이 있습니까?

도움이 되었습니까?

해결책

그만큼 ItemTemplateSelector 작동하지만 여러 가지를 만드는 것이 더 쉽다고 생각합니다. DataTemplate자원 섹션에있는 다음 각각을 제공합니다. DataType. 이것은 자동으로 이것을 사용합니다 DataTemplate 항목 생성기가 일치하는 데이터 유형을 감지하는 경우?

<DataTemplate DataType={x:Type local:ObjectA}>
   ...
</DataTemplate>

또한 당신이 없는지 확인하십시오 x:Key 설정 DataTemplate.
이 접근법에 대해 자세히 알아보십시오 여기

다른 팁

살펴보십시오 ItemTemplatesEctor 목록 컨트롤의 속성. 사용자 정의 템플릿 선거를 가리키고 코드에 사용할 템플릿을 결정할 수 있습니다.

다음은 TemplatesEctors를 설명하는 블로그 게시물입니다.

http://blogs.interknowlogy.com/johnbowen/archive/2007/06/21/20463.aspx

편집 : 더 나은 게시물은 다음과 같습니다.

http://blog.paranoidferret.com/index.php/2008/07/16/wpf-tutorial-how-to-us-us--datatemplateselector/

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top