【问题标题】:Change tab items location in WPF Tab Control更改 WPF 选项卡控件中的选项卡项位置
【发布时间】:2013-01-27 22:48:58
【问题描述】:

我想更改 WPF TabControl 中的 TabItems 位置。 我知道有一个“标签条位置”属性,但这个属性只允许我使用“顶部”、“左侧”、“右侧”、“底部”选项。 我想将标签条放在标签控件的顶部,如下所示:

 -----------------------------------
 |                                 |
 |   TabItem1       TabItem2       |
 |                                 |
 |                                 |
 |                                 |

但我找不到怎么做。

TabItems 仍然需要在不同的内容之间切换。

谢谢,

【问题讨论】:

    标签: c# .net wpf tabcontrol


    【解决方案1】:

    这可以通过覆盖你可以从here获得的tabControl的默认模板来实现。

    我根据您的需要修改了一些模板-

           <Style TargetType="{x:Type TabControl}"
                   BasedOn="{StaticResource {x:Type TabControl}}">
              <Setter Property="Template">
                <Setter.Value>
                  <ControlTemplate TargetType="{x:Type TabControl}">
                    <Grid KeyboardNavigation.TabNavigation="Local">
                      <Grid.RowDefinitions>
                        <RowDefinition Height="Auto" />
                        <RowDefinition Height="*" />
                      </Grid.RowDefinitions>
                       <Border Background="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"
                               Grid.Row="0"
                               BorderThickness="1">
                          <TabPanel x:Name="HeaderPanel"
                                    IsItemsHost="True"
                                    Margin="0,10,0,0"
                                    Panel.ZIndex="1"
                                    KeyboardNavigation.TabIndex="1"
                                    Background="Transparent" />
                       </Border>
                      <Border x:Name="Border"
                              Grid.Row="1"
                              BorderThickness="1"
                              KeyboardNavigation.TabNavigation="Local"
                              KeyboardNavigation.DirectionalNavigation="Contained"
                              KeyboardNavigation.TabIndex="2"
                              Background="{DynamicResource {x:Static SystemColors.ControlBrushKey}}">
                        <ContentPresenter x:Name="PART_SelectedContentHost"
                                          Margin="4"
                                          ContentSource="SelectedContent" />
                      </Border>
                    </Grid>
                  </ControlTemplate>
                </Setter.Value>
              </Setter>
            </Style>
    

    将此样式放入您的窗口资源中,您就可以开始使用了。它给了我这个外观(希望这是你想要的)-

    【讨论】:

      猜你喜欢
      • 2011-01-18
      • 2011-10-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-08
      • 1970-01-01
      • 2015-03-17
      • 2011-06-08
      相关资源
      最近更新 更多