2016-05-16 64 views
0

我使用MahApp,我創建了以下TabControl如何在鼠標結束時更改TabItem顏色?

<TabControl TabStripPlacement="Left" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="0"> 
<TabItem> 
    <TabItem.Header> 
     <Image Source="Images/Icon.png"></Image> 
    </TabItem.Header> 
    <TabItem.Content> 
      <Grid> 
       <Controls:Scheduler x:Name="Scheduler"/> 
      </Grid> 
    </TabItem.Content> 
</TabItem> 
</TabControl> 

我如何處理MouseOver事件並改變顏色?實際上,如果我將鼠標傳遞給TabItem,用戶不理解TabItem是否可點擊。提前致謝。

回答

3

您可以添加TabItem作爲TabControl的一部分。 Style將根據MouseOver觸發。

<TabControl TabStripPlacement="Left" Grid.Column="0" Grid.ColumnSpan="2" Grid.Row="0"> 
    <TabControl.Resources> 
     <Style TargetType="{x:Type TabItem}"> 
      <Setter Property="Width" Value="Auto"/> 
      <Setter Property="Background" Value="Transparent" /> 
      <Setter Property="Height" Value="Auto"/> 
      <Setter Property="Template"> 
       <Setter.Value> 
        <ControlTemplate TargetType="TabItem"> 
         <Border Name="Border" Background="Transparent"> 
          <ContentPresenter x:Name="ContentSite" 
           VerticalAlignment="Center" 
           HorizontalAlignment="Left" 
           ContentSource="Header" 
           Margin="10,2"/> 
         </Border> 
         <ControlTemplate.Triggers> 
          <Trigger Property="IsMouseOver" Value="True" SourceName="Border"> 
           <Setter TargetName="Border" Property="Background" Value="Blue" /> 
          </Trigger> 
         </ControlTemplate.Triggers> 
        </ControlTemplate> 
       </Setter.Value> 
      </Setter> 
     </Style> 
    </TabControl.Resources> 
    <TabItem> 
     <TabItem.Header> 
      <Image Source="Images/Icon.png"></Image> 
     </TabItem.Header> 
     <TabItem.Content> 
      <Grid> 

      </Grid> 
     </TabItem.Content> 
    </TabItem> 
</TabControl> 

編輯:如果你想要的顏色當選擇TabItem持續下去,這增加了ControlTemplate.Triggers

  <Trigger Property="IsSelected" Value="True"> 
       <Setter TargetName="Border" Property="Background" Value="Blue" /> 
      </Trigger> 
+0

很好的答案。謝謝:)只是一個問題:是否可以在單擊tabItem時保持顏色? – IlDrugo

+1

是啊,看到更新 –

相關問題