c# tabs wpftoolkit avalondock placement

c# - ¿Cómo muevo la pestaña AvalonDock Anchoable Panel hacia arriba en lugar de hacia abajo?



tabs wpftoolkit (1)

Según Issue Ticket que se encuentra en CodePlex, hay un error que impide cambiar TabStripPlacement a la parte superior. La forma de lograr esto es reemplazar el estilo existente por uno como este:

<Style x:Key="MyCustomAnchorablePaneControlStyle" TargetType="{x:Type xcad:LayoutAnchorablePaneControl}"> <Setter Property="TabStripPlacement" Value="Top"/> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type xcad:LayoutAnchorablePaneControl}"> <Grid ClipToBounds="true" SnapsToDevicePixels="true" KeyboardNavigation.TabNavigation="Local"> <Grid.RowDefinitions> <RowDefinition Height="Auto"/> <RowDefinition Height="*"/> </Grid.RowDefinitions> <!--Following border is required to catch mouse events--> <Border Background="Transparent" Grid.RowSpan="2"/> <xcad:AnchorablePaneTabPanel x:Name="HeaderPanel" Margin="2,0,2,2" IsItemsHost="true" Grid.Row="0" KeyboardNavigation.TabIndex="1" Panel.ZIndex="1"/> <Border x:Name="ContentPanel" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Grid.Column="0" KeyboardNavigation.DirectionalNavigation="Contained" Grid.Row="1" KeyboardNavigation.TabIndex="2" KeyboardNavigation.TabNavigation="Cycle"> <ContentPresenter x:Name="PART_SelectedContentHost" ContentSource="SelectedContent" Margin="{TemplateBinding Padding}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/> </Border> </Grid> <ControlTemplate.Triggers> <Trigger Property="IsEnabled" Value="false"> <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> <Setter Property="ItemContainerStyle"> <Setter.Value> <Style TargetType="{x:Type TabItem}"> <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}"/> <Setter Property="ToolTip" Value="{Binding ToolTip}"/> <Style.Triggers> <DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TabControl}}, Path=Items.Count}" Value="1"> <Setter Property="Visibility" Value="Collapsed"/> </DataTrigger> </Style.Triggers> </Style> </Setter.Value> </Setter> <Setter Property="ItemTemplate"> <Setter.Value> <DataTemplate> <xcad:LayoutAnchorableTabItem Model="{Binding}"/> </DataTemplate> </Setter.Value> </Setter> <Setter Property="ContentTemplate"> <Setter.Value> <DataTemplate> <xcad:LayoutAnchorableControl Model="{Binding}"/> </DataTemplate> </Setter.Value> </Setter> </Style>

Estoy usando AvalonDock en un proyecto y me gustaría usar el Panel de Anclaje, pero en lugar de la pestaña que aparece en la parte inferior, me gustaría que aparezca en la parte superior como lo hace en un Panel de documentos. Para mi proyecto, un Panel de documentos no es el control apropiado, por lo que necesito encontrar una manera de hacer que el Paneles Anchoable aparezca de la misma manera.