How to: Create a Timer
Microsoft Silverlight will reach end of support after October 2021. Learn more.
To create a timer in Silverlight, use the DispatcherTimer class in the System.Windows.Threading namespace.
The following example shows a simple counter that uses a DispatcherTimer.
Example
<Grid x:Name="LayoutRoot" Background="White">
<!-- Just a TextBlock to show the output of the timer. -->
<TextBlock Loaded="StartTimer" x:Name="myTextBlock" />
</Grid>
public void StartTimer(object o, RoutedEventArgs sender)
{
System.Windows.Threading.DispatcherTimer myDispatcherTimer = new System.Windows.Threading.DispatcherTimer();
myDispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 100); // 100 Milliseconds
myDispatcherTimer.Tick += new EventHandler(Each_Tick);
myDispatcherTimer.Start();
}
// A variable to count with.
int i = 0;
// Raised every 100 miliseconds while the DispatcherTimer is active.
public void Each_Tick(object o, EventArgs sender)
{
myTextBlock.Text = "Count up: " + i++.ToString();
}
Public Sub StartTimer(ByVal o As Object, ByVal sender As RoutedEventArgs)
Dim myDispatcherTimer As System.Windows.Threading.DispatcherTimer = New System.Windows.Threading.DispatcherTimer
myDispatcherTimer.Interval = New TimeSpan(0, 0, 0, 0, 100)
' 100 Milliseconds
AddHandler myDispatcherTimer.Tick, AddressOf Me.Each_Tick
myDispatcherTimer.Start
End Sub
' A variable to count with.
Private i As Integer = 0
' Raised every 100 miliseconds while the DispatcherTimer is active.
Public Sub Each_Tick(ByVal o As Object, ByVal sender As EventArgs)
("Count up: " + i) = (("Count up: " + i) _
+ 1)
myTextBlock.Text = ("Count up: " + i)
ToString
End Sub