I need to just have a simple task that runs as long as the user is on one specific screen. On this screen there is a count down timer.
I looked into Background Agents - but that seems not to be the right approach.
Basically it should work like this: The user goes to this one screen, presses start and the cont down timer starts to count down - every 30 seconds update is perfectly ok.
How should I do this on WP8 ?
You should use a DispatcherTimer as wkempf points out. Pretty simple to create actually. Something like this (where you have a TextBlock named countText in your xaml:
public partial class MainPage : PhoneApplicationPage
{
private DispatcherTimer _timer;
private int _countdown;
// Constructor
public MainPage()
{
InitializeComponent();
_countdown = 100;
_timer = new DispatcherTimer();
_timer.Interval = TimeSpan.FromSeconds(1);
_timer.Tick += (s, e) => Tick();
_timer.Start();
}
private void Tick()
{
_countdown--;
if (_countdown == 0)
{
_timer.Stop();
}
countText.Text = _countdown.ToString();
}
}