Одна большая разница - то, что события jQuery обрабатываются в реестре, который анализируется на событии щелчка. Кардинально, это означает, что Вам разрешают присвоить несколько обратных вызовов и инициировать их в порядке, в котором они были зарегистрированы:
<script type="text/javascript">
$(document).ready(function() {
$("#clickme").click(function() {
alert("clicked!");
});
$("#clickme").click(function() {
alert("I concur, clicked!");
});
});
</script>
Они будут оба вызваны на click
событие в том порядке. "Реальное" onClick
событие переопределяется управляемой реестром системой jQuery. В структуре документа ванили, без системы как jQuery на месте, может только быть один onClick
событие.
Я считаю, что вам нужно будет определить шаблон настраиваемого элемента управления для TabItem, возможно, даже один для TabControl. Вот пример TabItem, который использует разделитель для некоторого разделения.
<Style
x:Key="SpacedTab"
TargetType="{x:Type TabItem}">
<Setter
Property="Template">
<Setter.Value>
<ControlTemplate
TargetType="{x:Type TabItem}">
<Border
x:Name="Spacer"
Width="Auto"
Height="Auto"
Padding="0 0 5 0"
Margin="0 0 0 0"
BorderBrush="Transparent"
BorderThickness="0">
<Border
x:Name="Border"
MinWidth="150"
Width="Auto"
Height="30"
Background="Gray"
BorderBrush="DarkGray"
BorderThickness="0,0,0,0"
CornerRadius="6,6,0,0"
Cursor="Hand"
VerticalAlignment="Bottom">
<ContentPresenter
x:Name="ContentSite"
TextElement.FontSize="10pt"
TextElement.FontFamily="Arial"
TextElement.Foreground="Black"
VerticalAlignment="Center"
HorizontalAlignment="Center"
ContentSource="Header"
Margin="8,3,8,3"
Width="Auto"
Height="Auto" />
</Border>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Надеюсь, это толчок в правильном направлении; вам все равно нужно будет добавить это как ресурс стиля и ссылаться на него из TabControl -> TabItem.