【问题标题】:Set an image when a tabitem is selected选择一个 tabitem 时设置一个图像
【发布时间】:2012-02-05 12:50:33
【问题描述】:

我是 wpf 的新手,我不知道在选择选项卡项时应该如何设置图像。

我写了一个样式,但它不起作用。它向我展示了任何东西......

<Style TargetType="TabItem">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="TabItem">
                <Grid>
                   <StackPanel Orientation="Horizontal">
                       <HeaderedItemsControl Name="img"  >
                       </HeaderedItemsControl>
                   </StackPanel>
                </Grid>
             <ControlTemplate.Triggers>
             <Trigger Property="IsSelected" Value="True">
                   <Setter Property="Visibility" TargetName="img" Value="Visible"/>    
             </Trigger>      
             <Trigger Property="IsSelected" Value="False">
                   <Setter Property="Visibility" TargetName="img" Value="Hidden"/>
             </Trigger>
         </ControlTemplate.Triggers>      
       </ControlTemplate>     
     </Setter.Value>      
   </Setter>     
 </Style>     

对于tab控件我写了代码:

 <TabControl Name="tabControl1"  
             HorizontalAlignment="Left"                  
             VerticalAlignment="Top" 
             Height="311" 
             Width="503">
    <TabItem Name="tabItem1" Background="Red"  >                
            <TabItem.Header>
                <Grid>
                    <TextBlock Text="   First" Width="100" Margin="-2,33,4,16" />
                    <Image  Name="img" Source="menu.png" Height="20" Margin="0,60,0,0" />
                </Grid>

            </TabItem.Header>
            <Grid>

            <TextBox Name="denumire" Margin="31,20,169,67" Height="20" Width="60"/>
            </Grid>

        </TabItem>
    <TabItem Name="tabItem2" Header="tabItem2" Background="Red">
        </TabItem>
    </TabControl>

【问题讨论】:

    标签: wpf visual-studio-2010 xaml tabcontrol


    【解决方案1】:

    按照您的风格,将HeaderedItemsControl 更改为如下内容:

    <HeaderedItemsControl>
        <TextBlock Text="{TemplateBinding Header}" Width="100"/>
        <Image x:Name="img" Source="menu.png" Height="20" />
    </HeaderedItemsControl>
    

    并删除您的TabControl 中的整个&lt;TabItem.Header&gt; 部分。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-01
      • 2020-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多