问题是TabConnel(由TabControl在内部用于布置选项卡)似乎不支持您想要的内容.一个快速的解决方法是用其他东西替换TabPanel,例如DockPanel:
<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<TabControl>
<TabControl.Template>
<ControlTemplate TargetType="TabControl">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Border BorderThickness="0,0,1,1" BorderBrush="#D0CEBF" Grid.Row="1">
<Border BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}">
<Border Background="{TemplateBinding Background}">
<ContentPresenter ContentSource="SelectedContent"/>
</Border>
</Border>
</Border>
<DockPanel IsItemsHost="True" LastChildFill="False" Margin="2,2,2,0" />
</Grid>
</ControlTemplate>
</TabControl.Template>
<TabItem Header="Item 1" />
<TabItem Header="Item 2" />
<TabItem Header="Item 3" />
<TabItem Header="Item 4" DockPanel.Dock="Right" />
</TabControl>
</Window>
Run Code Online (Sandbox Code Playgroud)
(参考:这是用于设置TabControl样式的MSDN示例的修改版本.)
简单的DockPanel不像TabPanel那样平滑 - 当它们之间切换时,标签"跳"一点,但这可能会让你开始.也许子类化TabPanel并覆盖相关部分会给你一个更准确的结果; 我想这取决于你想付出多少努力.
| 归档时间: |
|
| 查看次数: |
5213 次 |
| 最近记录: |