2014-07-24 1 views
0

3 개의 이미지를 업로드 할 수있는 창을로드하는 방법을 알고 싶었 기 때문에 gif의 느낌을 들려줍니다.무브먼트 효과가있는 일련의 이미지로드 WPF C#

프로젝트를 하나만 수행하면 모든 것이 잘되지만 버튼을 연결하면 나에게 적합하지 않습니다. 왜 그럴까요? 누군가 나를 이해하도록 도와 줄 수 있습니까?

이 코드 XAML :

<Image Name="ConnectionImage" Grid.RowSpan="2" Grid.ColumnSpan="2"> 
      <Image.Triggers> 
       <EventTrigger RoutedEvent="Image.Loaded"> 
        <BeginStoryboard> 
         <Storyboard> 
          <DoubleAnimation Name="DoubleAnimation_ConnectionTest" Storyboard.TargetName="ConnectionImage" 
              Storyboard.TargetProperty="Width" From="200" To="200" 
              Duration="0:0:1.0" Completed="DoubleAnimation_Completed"/> 
         </Storyboard> 
        </BeginStoryboard> 
       </EventTrigger> 
      </Image.Triggers> 
     </Image> 

이미지 코드 동안 :

int ctr = 1; 
    private void DoubleAnimation_Completed (object sender, EventArgs e) 
    { 
     ShowImage(); 
     DoubleAnimation_ConnectionTest.BeginAnimation(Image.WidthProperty, DoubleAnimation_ConnectionTest); 
    } 

    private void ShowImage() 
    { 
     string filename = "Images/Connection" + ctr + ".jpg"; 
     BitmapImage image = new BitmapImage(); 
     image.BeginInit(); 
     image.UriSource = new Uri(filename, UriKind.Relative); 
     image.EndInit(); 
     ConnectionImage.Source = image; 

     ctr++; 

     if (ctr > 3) 
     { 
      ctr = 1; 
     } 
    } 

버튼 : C#을 사용 전적으로 가능

private void Button_Test_DB_Click(object sender, RoutedEventArgs e) 
     { 
      Window_Test Test_DB = new Window_Test(); 
      Test_DB.Show(); 

     } 
+0

"나를 위해 작동하지 않습니다"는 실제로 유용한 문제 설명이 아닙니다. 그것에 대해 더 구체적으로 말하십시오. 그리고 참고 : 일부 코드의 주기적 실행을 위해 애니메이션의 Completed 이벤트를 사용하는 것이 이상하게 보입니다. 왜 DispatcherTimer를 사용하지 않는가? – Clemens

+0

창에서 애니메이션 만있는 프로젝트를 수행하면 작동하고, 그렇지 않으면 창에서 버튼을 검색하면 빈 창이 열립니다. – iamwill

답변

0

. FrameDimension Class을 사용하면 도움이됩니다. 불행히도이 게시물에 대한 답변이 없기 때문에이 질문을 닫을 수는 없습니다 ... 대신 Stack Overflow에서 How do I get an animated gif to work in WPF?Animating Gif in WPF 질문에 대한 답변을 볼 것을 권장합니다.

또한 Visual C# Kicks 웹 사이트에서 The Code - An Animated GIF Class 페이지를 볼 수도 있습니다.

+0

고마워요.하지만 실제로는 gif가 아니라 연속적이기 때문에 디자인을 만드는 일련의 애니메이션 이미지입니다. – iamwill