WPF 选项卡控件仅显示选项卡而不显示任何内容



这个想法是简单地使用制表符(标题(进行选择。所以"内容"是不必要的。而且我似乎找不到一种简单的方法来使内容"空"或占据零高度。

因此,从视觉上看,您应该只显示选项卡,没有其他内容。

若要隐藏选项卡的内容,可以覆盖 TabControl 的内容模板。

<TabControl>
<TabControl.ContentTemplate>
<DataTemplate/>
</TabControl.ContentTemplate>
</TabControl>

您能否自定义 MSDN 示例中的ControlTemplate并删除所选内容:https://msdn.microsoft.com/en-us/library/ms754137(v=vs.90(.aspx

所以它会变成这样:

<Style  TargetType="{x:Type TabControl}">
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TabControl}">
<Grid KeyboardNavigation.TabNavigation="Local">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TabPanel 
Name="HeaderPanel"
Grid.Row="0"
Panel.ZIndex="1" 
Margin="0,0,4,-1" 
IsItemsHost="True"
KeyboardNavigation.TabIndex="1"
Background="Transparent" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

您可以使用重叠的选项卡形状按钮,您实际上不需要选项卡控件。

下面介绍如何在 WPF 中创建自定义形状的按钮。

这是创建选项卡形按钮的方法。

另一种方法可以做到这一点:

<TabControl Padding="0" BorderThickness="0">
<TabControl.ContentTemplate>
<DataTemplate>
<Grid/>
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>

最新更新