只要用户在一个特定的屏幕上,我就需要运行一个简单的任务。 在这个屏幕上有一个倒计时器。
我研究了后台代理 - 但这似乎不是正确的方法。
基本上它应该像这样工作:用户进入这一个屏幕,按下开始,减速计时器开始倒计时 - 每30秒更新完全没问题。
我应该如何在WP8上执行此操作? 非常感谢!
答案 0 :(得分:2)
你应该使用DispatcherTimer作为wkempf指出。实际创建非常简单。像这样的东西(你的xaml中有一个名为countText的TextBlock:
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();
}
}
答案 1 :(得分:0)
.NET中有很多计时器。 System.Windows.Threading.DispatcherTimer可能是您想要的,但System.Threading.Timer可能也是您想要的。取决于您是要在后台还是在UI线程上运行定期代码。