我有一个tabcontrol,我想把一些tabitem Headers 对齐到左边,其他 Headers 对齐到右边 . 就像在这个模拟截图中:
http://img269.imageshack.us/img269/8894/tabcontrol.png
我已经尝试过了:
- 样式:我可以使用以下方法对齐tabitem:
但是我找不到混合左右对齐标签项的方法 .
- 使用两个TabControls:我可以有两个重叠的TabControl,一个是左对齐的标签,另一个是右对齐的标签 . 困难在于让他们转换 . 单击或MouseDown don 't fire consistently when the user clicks the tab header (even with Ishitvisible = true). SelectionChanged doesn' t工作,因为如果用户先前在TabControl 2中选择了选项卡'D',则转到Tab 'A'并返回'D' - TabControl 2不知道选择已更改 .
在这一点上,我没有想法 .
2 回答
您可以尝试覆盖
TabPanel
的模板,但是如果不这样做的话,'t work you'将不得不覆盖TabControl.Template
. 可以找到默认控件模板hereEdit
刚刚测试过,
TabPanel
没有你可以覆盖的模板,所以最好的办法是覆盖TabControl.Template
以使用你自己的Panel来托管TabItems .感谢"Andrew Hanlon",您可以使用Blend编辑
TabControl
模板 .将
TabPanel
替换为DockPanel
然后添加
HorizontalAlignment="Right"
它适用于我 .