Update the UI Asynchronously on a Timer : Timer « Windows Presentation Foundation « VB.Net






Update the UI Asynchronously on a Timer

Update the UI Asynchronously on a Timer
    

<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WPF" Height="100" Width="300">
    <StackPanel>
        <Button x:Name="button" Click="Button_Click">Start Timer</Button>
        <TextBlock x:Name="txtStatus">
        </TextBlock>
    </StackPanel>
</Window>

//File:Window.xaml.vb

Imports System
Imports System.Windows
Imports System.Windows.Threading

Namespace WpfApplication1
  Public Partial Class Window1
    Inherits Window
    Private timer As DispatcherTimer

    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub Button_Click(sender As Object, e As RoutedEventArgs)
      If timer Is Nothing OrElse Not timer.IsEnabled Then
        timer = New DispatcherTimer()

        timer.Interval = TimeSpan.FromMilliseconds(1000)
        AddHandler timer.Tick, New EventHandler(AddressOf timer_Tick)

        timer.Start()
        button.Content = "Stop Timer"
      Else
        timer.[Stop]()
        button.Content = "Start Timer"
      End If
    End Sub

    Private Sub timer_Tick(sender As Object, e As EventArgs)
      txtStatus.Text = DateTime.Now.Second.ToString()
    End Sub
  End Class
End Namespace

   
    
    
    
  








Related examples in the same category

1.Using a DispatcherTimerUsing a DispatcherTimer
2.DispatcherTimer set upDispatcherTimer set up