2013-08-28 3 views
0

Код nex - это простой код для создания анимации в текстовом поле.как я могу сделать анимацию на TextBox?

Мне нужно, но это в стиле, чтобы сделать анимацию более чем одним текстовым полем.

Я пытаюсь, но я потерпел неудачу.

-й код

<TextBox Grid.Column=" 1" Margin=" 5"> 
      <TextBox.Background > 
       <LinearGradientBrush StartPoint="0,0" EndPoint="1,1"> 
        <GradientStop x:Name="sd1" Color="White" Offset="0"/> 
        <GradientStop x:Name="sd2" Color="#FF5F5F5F" Offset="1"/> 
       </LinearGradientBrush> 
      </TextBox.Background> 
      <TextBox.Triggers > 
       <EventTrigger RoutedEvent="GotFocus"> 
        <BeginStoryboard > 
         <Storyboard > 
          <DoubleAnimation Storyboard.TargetName="sd1" Storyboard.TargetProperty="Offset" From="0" To="1" Duration="0:0:2"></DoubleAnimation> 
         </Storyboard> 
        </BeginStoryboard> 
       </EventTrigger> 
       <EventTrigger RoutedEvent="LostFocus" > 
        <BeginStoryboard > 
         <Storyboard > 
          <DoubleAnimation Storyboard.TargetName="sd1" Storyboard.TargetProperty="Offset" From="1" To="0" Duration="0:0:2"></DoubleAnimation> 
         </Storyboard> 
        </BeginStoryboard> 
       </EventTrigger> 
      </TextBox.Triggers> 
     </TextBox> 

спасибо ....

+0

Вы можете разместить то, что вы Пробовал, пожалуйста? Я понял, что у вас уже есть «Стиль»? – oddparity

ответ

2

стиль как ресурс:

<Window.Resources> 
    <Style x:Key="TextBoxStyle" TargetType="TextBox"> 
     <Setter Property="Background"> 
      <Setter.Value> 
       <LinearGradientBrush StartPoint="0,0" EndPoint="1,1"> 
        <GradientStop Color="White" Offset="0"/> 
        <GradientStop Color="#FF5F5F5F" Offset="1"/> 
       </LinearGradientBrush> 
      </Setter.Value> 
     </Setter> 
     <Style.Triggers> 
      <EventTrigger RoutedEvent="GotFocus"> 
       <BeginStoryboard > 
        <Storyboard > 
         <DoubleAnimation Storyboard.TargetProperty="Background.GradientStops[0].Offset" From="0" To="1" Duration="0:0:2"></DoubleAnimation> 
        </Storyboard> 
       </BeginStoryboard> 
      </EventTrigger> 
      <EventTrigger RoutedEvent="LostFocus" > 
       <BeginStoryboard > 
        <Storyboard > 
         <DoubleAnimation Storyboard.TargetProperty="Background.GradientStops[0].Offset" From="1" To="0" Duration="0:0:2"></DoubleAnimation> 
        </Storyboard> 
       </BeginStoryboard> 
      </EventTrigger> 
     </Style.Triggers> 
    </Style> 
</Window.Resources> 

и чем ваше текстовое поле:

<TextBox Grid.Column=" 1" Margin=" 5" Style="{StaticResource TextBoxStyle}"/> 
Смежные вопросы