1

TabControl を含むアプリケーションがあります。この TabControl の TabItems は、アプリケーションの実行中に動的に作成されます。

TabControl を作成する xaml コードは次のとおりです。

<TabControl x:Name="tcTabs" Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="6" TabStripPlacement="Left"/>

を Topに設定すると、TabStripPlacementすべての TabItem が表示されます。しかし、私の場合、 がTabStripPlacementLeft に設定されている場合、TabItems がアプリケーションの境界の外に表示されることがあります。

目に見えないTabItemsにスクロールできるscrollviewerなどのようなものを取得する機会はありますか? または、左枠の 2 つ以上の列に TabItems を設定するだけです。

4

1 に答える 1

2

XAMLeLi既に述べたように

あなたはのために使用する必要がありControlTemplateますTabControl

ここに実際の例があります(ここにオリジナルがあります

<TabControl TabStripPlacement="Left" Height="60">
    <TabControl.Template>
        <ControlTemplate TargetType="TabControl">
            <StackPanel Orientation="Horizontal">
                <ScrollViewer VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Disabled"  >
                    <TabPanel x:Name="HeaderPanel" Margin="2,2,2,0" IsItemsHost="true" />
                </ScrollViewer>
                <ContentPresenter x:Name="PART_SelectedContentHost"
                                      SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
                                      Margin="{TemplateBinding Padding}"
                                      ContentSource="SelectedContent"/>
            </StackPanel>
        </ControlTemplate>
    </TabControl.Template>
    <TabItem Header="Visible" >
        <Grid Width="100" Height="100" Background="Blue"/>
    </TabItem>
    <TabItem Header="Visible"/>
    <TabItem Header="Visible"/>
    <TabItem Header="inv" Background="Red">
        <Button Content="blubb"></Button>
    </TabItem>
    <TabItem Header="inv"/>
    <TabItem Header="inv"/>
    <TabItem Header="inv"/>
</TabControl>
于 2013-04-29T12:49:20.583 に答える