2012-07-05 5 views
4

У меня есть три раскадровки в приложении wpf.Несколько раскадровки в приложении wpf

начинает холост анимация прогресс повторяющейся анимации конец одной анимации слишком

Всех раскадровки воодушевляющих и тот же образ, раскадровка «прогресс» повторяется (в то время как запрос в другом потоке работает) , «начало» раскадровки превзойдет его, за ним следует анимация «end». Я предположил, что это простая проблема: когда приложение запускается, запускайте анимацию «начать», затем в обработчик обработанных событий, запускает анимацию прогресса и т. Д.

Но это не работает: начинается анимация прогресса , но выглядит неправильно (странно мигает).

Я сделал «кнопку1», чтобы проанализировать это, и я заметил, что тот же метод в обработчике событий onclick кнопки работает (после того, как начальная раскадровка закончилась, я нажал ее, и раскадровка прогресса началась и появилась отлично) , (The FillBehavior Бегин анимации «Стоп»: кнопка оленья кожа работала без этого параметра, но EventHandler это остается неправильно после установки его)

private void Window_Loaded(object sender, RoutedEventArgs e) 
    { 
     begin = (Storyboard)FindResource("startanimation"); 
     progress = (Storyboard)FindResource("progressanimation"); 
     end = (Storyboard)FindResource("stopanimation"); 
     begin.Completed += new EventHandler(begin_Completed); 
     begin.Begin(); 
    } 


    void begin_Completed(object sender, EventArgs e) 
    { 
     progress.Begin();  //not works 
    } 

    private void button1_Click(object sender, RoutedEventArgs e) 
    {    
     progress.Begin();  //works 
    } 

Любая идея?

ответ

0

Попробуйте это:

void begin_Completed(object sender, EventArgs e)  
{   
    this.Dispatcher.Invoke(
          System.Windows.Threading.DispatcherPriority.Normal, 
          new Action(
          delegate() 
          { 
           progress.Begin(); 
          } 
         )); 
} 
+0

Спасибо за ответ. Я попробовал, но не работает, мигает все тот же. Они перекрывают друг друга или другие странные вещи ... Я не знаю. – magyarm

0

В конце концов я вынужден сделать дополнительный таймер и начать прогресс анимации в случае клещевого .. Очень некрасиво, но работает.

Любые другие советы по-прежнему приветствуются.