C# TabItem WPF的自定义内容
我目前有一个自定义C# TabItem WPF的自定义内容,c#,wpf,controltemplate,tabitem,C#,Wpf,Controltemplate,Tabitem,我目前有一个自定义选项卡项,它有一个自定义标题,定义为样式的一部分,如下所示: <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type t:TwitterListTabItem}"> <Border x:Name="Bd" Background="{TemplateBinding Backgrou
选项卡项
,它有一个自定义标题,定义为样式的一部分,如下所示:
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type t:TwitterListTabItem}">
<Border x:Name="Bd" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="0" Margin="0,-2,0,0" >
<Grid SnapsToDevicePixels="true">
<ContentPresenter x:Name="Content" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" ContentSource="Header" RecognizesAccessKey="True" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="{TemplateBinding Padding}"/>
<Button x:Name="PART_Close" HorizontalAlignment="Right" Margin="0" Padding="4" VerticalAlignment="Top" Width="16" Height="16" Style="{DynamicResource CloseableTabItemButtonStyle}" ToolTip="Close Tab">
<Path x:Name="Path" Stretch="Fill" StrokeThickness="0.5" Fill="#FFFFFF" Data="F1 M 2.28484e-007,1.33331L 1.33333,0L 4.00001,2.66669L 6.66667,6.10352e-005L 8,1.33331L 5.33334,4L 8,6.66669L 6.66667,8L 4,5.33331L 1.33333,8L 1.086e-007,6.66669L 2.66667,4L 2.28484e-007,1.33331 Z " HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
</Button>
<Button x:Name="PART_Number" HorizontalAlignment="Right" Padding="0" Margin="0" VerticalAlignment="Bottom" Width="16" Height="16" Style="{DynamicResource CloseableTabItemNumberStyle}" ToolTip="New Tweets" Content="{TemplateBinding NewTweetsNumber}" />
</Grid>
</Border>
<ControlTemplate.Triggers>
.....Triggers Removed for Shortness....
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter
..因短路而移除触发器。。。。
选项卡标题使用TabItem.HeaderTemplate属性,选项卡内容使用TabItem.Template属性 选项卡标题使用TabItem.HeaderTemplate属性,选项卡内容使用TabItem.Template属性 看起来您还需要一个ContentPresenter来显示内容。并且您已经有了一个ContentPresenter,它显示标题
<ContentPresenter ContentSource="Content"/>
看起来您还需要一个显示内容的ContentPresenter。并且您已经有了一个ContentPresenter,它显示标题
<ContentPresenter ContentSource="Content"/>
给出的错误“System.Windows.Controls.ControlTemplate”不是Setter上“System.Windows.Controls.HeaderedContentControl.HeaderTemplate”属性的有效值。这有一个如何使用两个模板属性的示例:给出的错误“System.Windows.Controls.ControlTemplate”不是Setter上的“System.Windows.Controls.HeaderedContentControl.HeaderTemplate”属性。这是一个如何使用这两个模板属性的示例:我以前看过这个,但它不能解决我的问题,因为它不允许我在内部定义控件我以前看过这个,但它不能解决我的问题,因为它不允许我定义里面的控件