【问题标题】:Change image when TabItem is selected选择 TabItem 时更改图像
【发布时间】:2016-10-11 14:23:55
【问题描述】:

我想在选择 TabItem 时更改图像。

这是我的 XAML

<TabControl>
<TapItem>
    <TabItem.Header>
        <StackPanel Orientation="Horizontal">
            <Image Source="aa.png"/>
            <TextBlock>AA</TextBlock>
        </StackPanel>
    </TabItem.Header>
</TapItem>

选择tabitem时,我想从“ aa.png”更改为“ sel_aa.png”。

【问题讨论】:

    标签: wpf tabcontrol


    【解决方案1】:

    您可以将触发器添加到您的 TabItem ControlTemplate

     <Style TargetType="{x:Type TabItem}">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type TabItem}">
                        <Grid>
                            <Grid.RowDefinitions>
                                <RowDefinition Height="30"></RowDefinition>
                                <RowDefinition Height="30"></RowDefinition>
                            </Grid.RowDefinitions>
                            <Border Grid.Row="0" Name="Border">
                                <ContentPresenter Content="AA" VerticalAlignment="Center" Margin="5" HorizontalAlignment="Center" ContentSource="Header" />
                            </Border>
                            <Image Grid.Row="1" x:Name="Image"/>
                        </Grid>
                        <ControlTemplate.Triggers>
                            <Trigger Property="IsSelected" Value="True">
                                <Setter TargetName="Border" Property="Background" Value="Red" />
                                <Setter TargetName="Image" Property="Image.Source" Value="sel_aa.png" />
                            </Trigger>
                            <Trigger Property="IsSelected" Value="False">
                                <Setter TargetName="Border" Property="Background" Value="Green" />
                                <Setter TargetName="Image" Property="Image.Source" Value="aa.png" />
                            </Trigger>
                        </ControlTemplate.Triggers>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    

    当您的 TabItem 被选中时,触发触发器并且图像源将更改为 sel_aa,当未选择 TabItem 时,图像源将是 aa。

    【讨论】:

      猜你喜欢
      • 2013-03-03
      • 2020-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多