2009-05-29 7 views

Antwort

2

Es gibt keine einfache Möglichkeit, Inhalte in diesem Ort zu Ort, aber es gibt einen Weg. Dazu müssen Sie den Standardwert ControlTemplate für TabControl überschreiben.

Die meisten Systeme Themen setzten die TabPanel (wo die Registerkarten) und den Registerkarte Inhalt in einem Grid etwa so:

<ControlTemplate TargetType="{x:Type TabControl}"> 
        <Grid KeyboardNavigation.TabNavigation="Local" 
          SnapsToDevicePixels="true" 
          ClipToBounds="true"> 
         <Grid.ColumnDefinitions> 
          <ColumnDefinition x:Name="ColumnDefinition0"/> 
          <ColumnDefinition x:Name="ColumnDefinition1" 
               Width="Auto"/> 
         </Grid.ColumnDefinitions> 
         <Grid.RowDefinitions> 
          <RowDefinition x:Name="RowDefinition0" 
              Height="Auto"/> 
          <RowDefinition x:Name="RowDefinition1" 
              Height="*"/> 
         </Grid.RowDefinitions> 
         <TabPanel x:Name="HeaderPanel" 
            Panel.ZIndex ="1" 
            KeyboardNavigation.TabIndex="1" 
            Grid.Column="0" 
            Grid.Row="0" 
            Margin="2,2,2,0" 
            IsItemsHost="true"/> 

         <Border x:Name="ContentPanel" 
           BorderThickness="0,0,1,1" 
           BorderBrush="#D0CEBF" 
           KeyboardNavigation.TabNavigation="Local" 
           KeyboardNavigation.DirectionalNavigation="Contained" 
           KeyboardNavigation.TabIndex="2" 
           Grid.Column="0" Grid.ColumnSpan="2" 
           Grid.Row="1"> 
... 

... 

... 
         </Border> 
        </Grid> 
... 
       </ControlTemplate> 

Sie also könnten ein anderes Content an das Netz hinzufügen und es an einem binden benutzerdefinierte angefügte Eigenschaft. Denken Sie daran, dass die Standard-ControlTemplates auch viele Trigger enthalten, die unter anderem die Überlaufbehandlung steuern, und Sie müssen sicherstellen, dass Ihre zusätzlichen UI-Elemente dies nicht beeinträchtigen.

sollten Sie in der Lage sein, so etwas wie dies ziemlich schnell zu bekommen, aber wenn Sie mit TabControl Ausrichtung oder Überlauf nicht zu tun haben:

Three TabItems with a Red Border and TextBlock http://img35.imageshack.us/img35/3237/tabpanelexample.png

Viel Glück!

Verwandte Themen