2012-02-06 65 views
1

我目前正在使用wpf。我在选项卡项目内激活了textblock控件的颜色。当选项卡被选中时,我想将前景更改为白色,i-eTabControl中的TextBlock彩色动画

<ColorAnimation 
     Storyboard.TargetName="buttonText" 
     Storyboard.TargetProperty="(TextBlock.Foreground).(SolidColorBrush.Color)" 
     To="White" Duration="0:0:.1" /> 

选项卡控制代码是;

<TabControl Name="tabSteps" Template="{StaticResource OfficeTabControl}"> 
     <TabItem Header="Info" IsSelected="True"> 
      <TextBlock>Info content</TextBlock> 
      </TabItem> 
      <TabItem Header="Recent"> 
       <TextBlock>Recent content tab</TextBlock> 
      </TabItem> 
      <TabItem Header="New"> 
       <TextBlock>New content tab</TextBlock> 
      </TabItem> 
      <TabItem Header="Print"> 
       <TextBlock>Print content tab</TextBlock> 
      </TabItem> 
      <TabItem Header="Save &amp; Send"> 
       <TextBlock>Save &amp; send content tab</TextBlock> 
      </TabItem> 
      <TabItem Header="Help"> 
       <TextBlock>Help tab</TextBlock> 
      </TabItem> 
     </TabControl> 

我想定位文本块。 但它不工作。 任何帮助将不胜感激。 我正在关注这项工作 http://www.codeproject.com/Articles/155211/Building-a-control-template-style-for-the-tabContr.aspx

+0

请澄清什么是不工作 - 你在哪里触发ColorAnimation,例如,会发生什么? – 2012-02-06 15:44:14

+0

我正瞄准在tablitem – 2012-02-06 17:24:27

+0

也许你应该看看[文档](http://msdn.microsoft.com/en-us/library/system.windows.media.animation.coloranimation.aspx) - 目前还不清楚你有什么问题。 – 2012-02-06 17:34:34

回答

0

使用VisualStateManager,为您的TabItem被选中时创建一个状态。然后,您可以指定您提到的动画,作为与所选状态之间的转换开始(有关教程,请参阅http://blogs.intuidev.com/post/2010/01/26/TabControlStyling_PartTwo.aspx)。

TabControl的默认样式是在这里(http://msdn.microsoft.com/en-us/library/cc645035(v=vs.95).aspx),或者如果您使用Expression Blend,则可以轻松生成它。

你也可以使用这种方法(一种编程触发):https://stackoverflow.com/a/4958562/914602

+0

我正在关注这个 – 2012-02-07 10:43:09