WPF中的ControlTemplates是否需要TargetType?我正在重新设计一些控件,注意到ComboBoxItem、ListViewItem和ListBoxItem都有相同的模板:
<ControlTemplate x:Key="ListBoxItemCT" TargetType="{x:Type ListBoxItem}">
<Border x:Name="Bd"
SnapsToDevicePixels="true"
Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Padding="{TemplateBinding Padding}"
CornerRadius="1">
<ContentPresenter x:Name="cpItemContent"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"
/>
</Border>
</ControlTemplate>
是否可以仅删除TargetType,并拥有一个适用于所有三个的模板?我正在尝试这样做,但遇到了奇怪的错误和问题。我找不到任何特定的参考,说明控件模板必须具有类型。