【发布时间】:2016-03-03 17:48:48
【问题描述】:
我将 Infragistics 控件与 Theming 一起使用。模板属性设置在触发器上。
该模板配置在层次结构的更上层,因此我无法直接编辑,但我想更改其中一个属性集。
例如
在触发器上设置的模板(截断)
<Style x:Key="FxtPaneTabItemStyle" TargetType="{x:Type igDock:PaneTabItem}">
<Setter Property="TextBlock.TextTrimming" Value="CharacterEllipsis" />
<Style.Triggers>
<Trigger Property="igDock:XamDockManager.PaneLocation" Value="Unpinned">
<Setter Property="Template" Value="{DynamicResource {x:Static igDock:PaneTabItem.DockableTabItemTemplateKey}}" />
</Trigger>
</Style.Triggers>
</Style>
在无法访问的代码中配置的模板(截断)
<ControlTemplate x:Key="{x:Static igDock:PaneTabItem.DockableTabItemTemplateKey}" TargetType="{x:Type igDock:PaneTabItem}">
<Border x:Name="ctrlBorder" SnapsToDevicePixels="true" MinHeight="25">
<controls:CardPanel>
<controls:CardPanel x:Name="Background">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Width="Auto" Height="25">
<Border x:Name="Border" Margin="0,0,0,0" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" SnapsToDevicePixels="True"/>
<Border x:Name="HighlightBorder" Margin="0" BorderBrush="{DynamicResource {x:Static igDock:DockManagerBrushKeys.TabbedListNotActiveInnerBorderFillKey}}" BorderThickness="0" SnapsToDevicePixels="True"/>
</Grid>
</controls:CardPanel>
</Border>
<ControlTemplate.Triggers>
</ControlTemplate.Triggers>
我只想覆盖 Border (x:Name="ctrlBorder") MinHeight 属性。如果不复制我的代码库中的整个 ControlTemplate,这是否可能。并更改此单一属性?
【问题讨论】:
标签: wpf wpf-controls infragistics wpf-style