2017-08-21 1 views
0

J'essaie de créer une minuterie lorsque ma page xaml se charge, elle démarre une minuterie de quatre minutes et quand elle atteint 0, le programme s'arrête et redémarre. avoir un problème en créant la minuterie. Utilisation de DispatcherTimer dans VB.net pour obtenir le résultat. Code ci-dessous:Essayer de créer un compte à rebours Minuteur dans WPF

Private Sub Timer_Loaded(sender As Object, e As RoutedEventArgs) 
    Dim time = New Threading.DispatcherTimer() 
    time.Interval = New TimeSpan(0, 0, 1) 
    AddHandler time.Tick, AddressOf time_tick 
    time.Start() 
End Sub 

Public Sub time_tick(ByVal sender As Object, e As RoutedEventArgs) 
    Timer.Text = Date.Now.Second 
End Sub 

essayé de mettre la time_click en tant que sous public le faire à l'intérieur de l'événement XAML Timer_Loaded serait une erreur. J'obtiens l'erreur suivante lors de l'exécution du code:

System.InvalidCastException: 'Impossible de convertir un objet de type' System.EventArgs 'en type' System.Windows.RoutedEventArgs '.'

Vous avez corrigé quelques problèmes et essayé de réécrire la fonction de minuterie. Cependant, je ne peux pas passer ce problème. Aussi essayé de mettre la balise de contenu de la zone de texte à droite dans l'adresse de l'adresse de seulement prend des méthodes.

Répondre

1

Un gestionnaire de l'événement Tick de DispatcherTimer accepte uniquement un argument d'événement de type System.EventArgs:

Public Sub time_tick(ByVal sender As Object, e As EventArgs) 
    Timer.Text = Date.Now.Second 
End Sub 


Vérifiez ce article exceptionnel sur le thème: http://www.dotnetheaven.com/article/timer-in-wpf-using-vb.net

+0

Je pense que cela va me diriger dans la bonne direction. Je dois juste maintenant trouver la meilleure façon de le mettre dans un compte à rebours. Merci – George

+0

répond-il à votre question? – TrevorBrooks

+1

Oui, va marquer. Je vous remercie. – George