2012-03-12 2 views
1

는 내 탭 컨트롤로 설정 탭 콘텐츠 템플릿이 있습니다WPF에서 일부 탭의 다른 템플릿을 렌더링하는 방법은 무엇입니까?

<TabControl   SelectedIndex="0" 
        ItemsSource="{Binding Tabs}" 
        ItemTemplate="{StaticResource AppTabItemTemplate}" 
        ContentTemplate="{StaticResource AppTabContentTemplate}" /> 

것은이 시대의 대부분은 현재 템플릿이 원하는 것을입니다,하지만 대신에 다른 템플릿을 표시 할 경우가 있습니다. 항목 소스는이 데이터를 표시할지 여부에 관계없이이 데이터를 제공하지만 XAML에서 "if"를 수행하고 다른 레이아웃을 원할 때 대체 UI를 사용하려면 어떻게해야합니까?

이 논리는이 탭 컨트롤이 포함 된 템플릿 또는 포함 된 XAML에 속해야합니까? UI 사이에서 결정을 내리는 데 사용되는 정보는 항목 소스에 있습니다.

+3

['ItemTemplateSelector'] (http://msdn.microsoft.com/en-us/library/system.windows.controls.itemscontrol.itemtemplateselector.aspx) –

답변

2

DataTemplateSelector을 사용하십시오.

DataTemplateSelector를 파생시키는 클래스에서 선택 논리를 정의하고 XAML에서 선택기에 대한 리소스를 만든 다음 리소스를 탭 컨트롤의 ItemTemplateSelector 속성에 할당하여 사용해야합니다.

관련 문제