タブ項目のテンプレートを作成しようとしていますが、問題があります。幅を設定する方法がわかりません。空の場合でも、tabitem が tabcontrol のサイズに自動調整されるようにしたいと思います。
これが私のコードです:
<Style x:Key="StyleTabItem" TargetType="{x:Type TabItem}">
<Setter Property="OverridesDefaultStyle" Value="True"/>
<Setter Property="FocusVisualStyle" Value="{x:Null}"/>
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TabItem}">
<Border Height="30" Name="Border" Margin="0,0,0,0"
BorderThickness="0" Background="Transparent" BorderBrush="Transparent">
<Grid>
<Image Name="img" RenderOptions.BitmapScalingMode="Fant" Source="images/design/in game/onglet_off.png"/>
<ContentPresenter Grid.Column="1" VerticalAlignment="Center"
HorizontalAlignment="Center"
TextBlock.Foreground="#fbffba"
TextBlock.FontFamily="Verdana"
TextBlock.FontSize="11"
Name="textTab"
Width="{Binding Value, ElementName=Header}"
ContentSource="Header" Margin="2,0,0,0"
RecognizesAccessKey="True">
</ContentPresenter>
</Grid>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter TargetName="img" Property="Source" Value="images/design/in game/onglet_on.png"/>
<Setter Property="Cursor" TargetName="Border" Value="Hand"/>
<Setter TargetName="textTab" Property="TextBlock.Foreground" Value="#393939"/>
</Trigger>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="img" Property="Source" Value="images/design/in game/onglet_on.png"/>
<Setter TargetName="textTab" Property="TextBlock.Foreground" Value="#393939"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
tabitems のグリッドを tabcontrol のサイズに自動リサイズすることができません。
タブコントロールを DockPanel に配置しようとしましたが、変更されません。
<DockPanel LastChildFill="True">
<TabControl HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" Style="{DynamicResource StyleTabControl}" Margin="10,39,10,10" Name="tabControl1" IsEnabled="True" SelectionChanged="tabControl1_SelectionChanged">
<TabItem Style="{DynamicResource StyleTabItem}" Header="tabItem1" Name="tabItem2" IsEnabled="True">
<Grid>
</Grid>
</TabItem>
<TabItem Style="{DynamicResource StyleTabItem}" Header="tabItem1" Name="tabItem3" IsEnabled="True">
<Grid>
</Grid>
</TabItem>
</TabControl>
</DockPanel>
ありがとう