#wpf #xaml #tabcontrol
Вопрос:
Я пытаюсь создать элемент управления вкладками в WPF, в котором вкладки расположены справа от элемента управления, а текст повернут на 90 градусов.Внешний вид похож на те пластиковые вкладки, которые вы можете купить и использовать в ноутбуке. Я попытался изменить полосу вкладок вправо, но она просто складывает вкладки в верхней правой части элемента управления — совсем не то, что я имел в виду.
Ответ №1:
Эффект, которого, я полагаю, вы добиваетесь, достигается за счет предоставления заголовка для элементов табуляции в вашей коллекции вкладок.
<TabControl TabStripPlacement="Right">
<TabControl.Resources>
<Style TargetType="{x:Type TabItem}">
<Setter Property="Padding" Value="4" />
<Setter Property="HeaderTemplate">
<Setter.Value>
<DataTemplate>
<ContentPresenter Content="{TemplateBinding Content}">
<ContentPresenter.LayoutTransform>
<RotateTransform Angle="90" />
</ContentPresenter.LayoutTransform>
</ContentPresenter>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</TabControl.Resources>
<TabItem Header="Tab Item 1" />
<TabItem Header="Tab Item 2" />
<TabItem Header="Tab Item 3" />
<TabItem Header="Tab Item 4" />
</TabControl>
Надеюсь, это поможет!
Комментарии:
1. Если вкладки «длиннее», чем высота сетки, есть ли способ прокрутить вкладки, чтобы показать те, которые изначально не видны?
2. … или иметь несколько столбцов вкладок, как это происходит, когда вкладки расположены в верхней части элемента управления?