我想在WPF TabControl
TabItem
的左侧添加一些余量。如果我使用直截了当的Margin="4"
方法,则边距将应用于每个TabItem
,而我希望将整个标签项容器向右移动一点。例如,默认情况下,选项卡看起来像右边2个像素,我想增加它,以便我可以在选项卡的左侧放置一个按钮。
答案 0 :(得分:8)
您需要为TabControl定义一个新模板。
如果您使用此模板,您可以更改HeaderPanel的边距以达到您想要的效果。
如果您需要查看正在使用的真实模板,可以使用Blend提取模板。然后你可以修改它。
另一种方法是派生自己的TabControl并修改代码隐藏中的边距,例如:
public class MyTabControl : TabControl
{
public override void OnApplyTemplate()
{
base.OnApplyTemplate();
var panel = Template.FindName("HeaderPanel", this) as FrameworkElement;
if(panel != null)
{
panel.Margin = new Thickness(20,2,2,2);
}
}
}
答案 1 :(得分:1)
将TabControl包裹在面板(或网格或边框)中,并设置面板(或网格或边框)的边距属性。