2010-10-17 2 views

risposta

74

Hai provato il TabControl.TabStripPlacement Property?

Nell'esempio seguente viene creato un controllo struttura a schede che posiziona le schede sul lato sinistro.

<TabControl TabStripPlacement="Left" Margin="0, 0, 0, 10"> 
    <TabItem Name="fontweight" Header="FontWeight"> 
    <TabItem.Content> 
     <TextBlock TextWrapping="WrapWithOverflow"> 
     FontWeight property information goes here. 
     </TextBlock> 
    </TabItem.Content> 
    </TabItem> 

    <TabItem Name="fontsize" Header="FontSize"> 
    <TabItem.Content> 
     <TextBlock TextWrapping="WrapWithOverflow"> 
     FontSize property information goes here. 
     </TextBlock> 
    </TabItem.Content> 
    </TabItem> 
</TabControl> 
13

Si dovrebbe provare questo codice:

<TabControl.Resources> 
      <Style TargetType="{x:Type TabItem}"> 
       <Setter Property="HeaderTemplate"> 
        <Setter.Value> 
         <DataTemplate> 
          <ContentPresenter Content="{TemplateBinding Content}"> 
           <ContentPresenter.LayoutTransform> 
            <RotateTransform Angle="270" /> 
           </ContentPresenter.LayoutTransform> 
          </ContentPresenter> 
         </DataTemplate> 
        </Setter.Value> 
       </Setter> 
       <Setter Property="Padding" Value="3" /> 
      </Style> 
     </TabControl.Resources> 
0

in base alla risposta del rkirac sopra. Se non si desidera creare uno stile globale, è possibile inserire le stesse informazioni all'interno dello TabControl.ItemContainerStyle che influirà solo sullo TabControl in questione. Di seguito è riportato un semplice esempio:

<TabControl TabStripPlacement="Left"> 
    <TabControl.ItemContainerStyle> 
    <Style TargetType="TabItem"> 
     <Setter Property="LayoutTransform"> 
     <Setter.Value> 
      <RotateTransform Angle="270" /> 
     </Setter.Value> 
     </Setter> 
    </Style> 
    </TabControl.ItemContainerStyle> 
</TabControl>