【发布时间】:2015-05-05 16:21:18
【问题描述】:
我在 WPF 开发 (.net 3.5 sp1) 中遇到了一个烦人的问题,其中涉及在我的界面上显示一些标签(并旋转)。
我一直在使用普通 Aero 主题的 Windows 7 机器上进行开发,并且选项卡看起来不错
当我们部署给客户时,他们的机器设置为“Windows Classic”主题,标签显示为
所以它们都被“压扁”并且不显示文本。如果我将我的机器切换到 Windows Classic,那么我就可以重现。我查看了 WPF Inspector 的界面,可以看到一些不应该存在的填充值
如果我使用 WPF Inspector 将填充值更改为 0,则选项卡将再次开始正确显示!我已经在我为此设置的模板上将填充设置为 0,但它似乎没有任何影响
<TabControl TabStripPlacement="Left"
SelectedIndex="{Binding CurrentTabIndex}"
ItemsSource="{Binding CurrentPassengers}">
<TabControl.Resources>
<Style TargetType="{x:Type TabItem}">
<Setter Property="Padding"
Value="0" />
<Setter Property="Margin"
Value="0" />
<Setter Property="Width"
Value="26.5" />
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<ContentPresenter Content="{Binding NameInGDSFormat}">
<ContentPresenter.LayoutTransform>
<RotateTransform Angle="-90" />
</ContentPresenter.LayoutTransform>
</ContentPresenter>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</TabControl.Resources>
<TabControl.ContentTemplate>
<!-- Lots of stuff in here for the Content Template -->
</TabControl.ContentTemplate>
</TabControl>
我尝试设置各种模板,在各种元素上进行填充,但似乎没有任何改变 - 所以有人知道我该如何解决这个问题吗?
编辑:如果我删除设置的“宽度”,那么它实际上会显示在 Windows Classic 中 - 但选项卡非常宽。
【问题讨论】:
标签: c# wpf tabcontrol tabitem