C'è un modo per applicare gli stili al primo (o ultimo o ennesimo) figlio di un contenitore (qualsiasi cosa contenga figli)? Sto cercando di personalizzare l'aspetto degli elementi della scheda in modo che il primo abbia un raggio di confine diverso dagli altri.Applicare lo stile al primo figlio?
Questo è quello che ho adesso:
<ControlTemplate TargetType="{x:Type TabItem}">
<Grid>
<Border Name="Border" BorderBrush="#666" BorderThickness="1,1,1,0" CornerRadius="8,8,0,0" Margin="0,0,0,-1">
<TextBlock x:Name="TabItemText" Foreground="#444" Padding="6 2" TextOptions.TextFormattingMode="Display">
<ContentPresenter x:Name="ContentSite" VerticalAlignment="Center" HorizontalAlignment="Center" ContentSource="Header" Margin="12,2,12,2"/>
</TextBlock>
</Border>
</Grid>
</ControlTemplate>
Questo non funzionerà per il contenuto dinamico come @rFactor apparentemente ha bisogno, in quanto gli ItemContainer non vengono ricreati quando viene aggiunta una nuova scheda. Quindi, aggiungi una "nuova" scheda alla fine e anche a quest'ultima verrà assegnato "LastItemStyle". – WiredPrairie