2011-06-12 74 views
1

我有ControlTemplate(XAML)。 我需要在代碼behid中添加ControlTemplate到TabItem.Content。如何將ControlTemplate添加到內容?

var tabItem = new TabItem 
     { 
     DataContext = listDesk, 
     Header = headerText, 
     Content = ??? 

     }; 

XAML

<ControlTemplate x:Key="MyTabItemContentTemplate" TargetType="controls:TabItem"> 
    <StackPanel> 
     <TextBlock Text="wwwwww"/> 
    </StackPanel> 
</ControlTemplate> 

我用SL4

回答

3

我想你混淆的概念。而不是設置Content,其是數據的,設置Template,這是控制的可視化表示:

var tabItem = new TabItem 
     { 
     DataContext = listDesk, 
     Header = headerText, 
     Template = this.FindResource("MyTabitemContentTemplate") as ControlTemplate 

     }; 

此外,機會是沒有理由在代碼來做到這一點。你可以完全使用XAML。

+0

不,TabItem沒有ContentTempalte屬性 – Mediator 2011-06-12 09:19:03

+0

@denis:這是一個錯字,現在已修復。 – 2011-06-12 09:58:12