2013-04-25 5 views
0

나는 5 초 동안 표시되고 붕괴 될 팝업과 같은 테두리를 움직이기를 원합니다. 테두리가 표시되면 5 초 동안 만 표시되고 축소됩니다. 이것은 경계가 보일 때마다 반복됩니다. 나는 시도했지만 한 번만 나타납니다. 누군가 제가 제 실수를 설명해 주시겠습니까?국경/팝업을 5 초 동안 보는 방법?

스타일 :

여기

내가 여기
<Grid.Resources> 
     <Style x:Key="NotificationStyle" TargetType="{x:Type Border}"> 
      <Style.Triggers> 
       <Trigger Property="Visibility" Value="Visible"> 
        <Trigger.EnterActions> 
         <BeginStoryboard x:Name="NotificationStoryBoard"> 
          <Storyboard > 
           <ObjectAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetProperty="(UIElement.Visibility)"> 
            <DiscreteObjectKeyFrame KeyTime="00:00:00" Value="{x:Static Visibility.Visible}"/> 

            <DiscreteObjectKeyFrame KeyTime="00:00:05" Value="{x:Static Visibility.Collapsed}"/> 
           </ObjectAnimationUsingKeyFrames> 
          </Storyboard> 
         </BeginStoryboard> 
        </Trigger.EnterActions> 
       </Trigger> 
      </Style.Triggers> 
     </Style> 
    </Grid.Resources> 

을 구현 한 국경 인 스타일 ... 나는 깨달았다
<Border Name="NotifciationPopUp" Background="White" Height="80" Width="200" BorderBrush="Gray" BorderThickness="1" VerticalAlignment="Bottom" HorizontalAlignment="Left" Visibility="Collapsed" Margin="10,0,0,10" Style="{StaticResource NotificationStyle}"> 

답변

0

같은 방법으로 국경을 숨 깁니다이다
<Style x:Key="NotificationStyle" TargetType="{x:Type Border}"> 
    <Style.Triggers> 
     <Trigger Property="Visibility" Value="Visible"> 
      <Trigger.EnterActions> 
       <BeginStoryboard> 
        <Storyboard> 
         <DoubleAnimation Storyboard.TargetProperty="Opacity" BeginTime="0:0:0" From="0.0" To="1.0" Duration="0:0:1.0" /> 
         <DoubleAnimation Storyboard.TargetProperty="Opacity" BeginTime="0:0:5" From="1.0" To="0.0" Duration="0:0:1.0" /> 
        </Storyboard> 
       </BeginStoryboard> 
      </Trigger.EnterActions> 
     </Trigger> 
    </Style.Triggers> 
</Style> 

G 제거 :

<Grid> 
    <Border Name="MyBorder" Width="100" Visibility="Hidden" Height="50" BorderThickness="2" BorderBrush="OrangeRed" Style="{StaticResource NotificationStyle}"> 
     <TextBlock Text="Some information" TextAlignment="Center" VerticalAlignment="Center" /> 
    </Border> 

    <ToggleButton Name="MyButton" Content="Show border" Width="100" Height="30" VerticalAlignment="Bottom" Click="Button_Click" /> 
</Grid> 

을 코드에서 그의 실험에서

private void Button_Click(object sender, RoutedEventArgs e) 
{    
    if (MyButton.IsChecked == true) 
    { 
     MyBorder.Visibility = System.Windows.Visibility.Visible; 
    } 

    if (MyButton.IsChecked == false) 
    { 
     MyBorder.Visibility = System.Windows.Visibility.Hidden; 
    } 
} 

내가 속성을 한 번 애니메이션에 사용 된 경우, 다음 작업 것을 이해하는 것은 애니메이션 트리거에서만 가능하다. 따라서 내가받지 못한 부동산의 액세스 코드.

게다가 컨트롤의 Visibility = Collapsed를 사용하면 시스템에서 메시지를받지 못하고 애니메이션이 작동하지 않습니다. "숨김"속성은 메시지를 가져야하지만 애니메이션뿐만 아니라 작동하지도 않았으므로 예제에서는 불투명도을 사용했습니다.

관련 문제