Windows Phone 8.1中的Progress进度条控件跟计时器Dispatcher的正确用法
进度条,顾名思义就是表示操作进度的。它有两种表现形式,一种是无限循环的,一种是给你希望,让你看到能最终
到达100%的那种,俗称重复与非重复模式。
两种模式的区分通过ProgressBar的IsIndeterminate属性区分。设置为True,则为重复模式,且此为默认模式。设置
为False,则为非重复模式。两种模式要依据不同的编程需求使用。
重复模式没啥好说的。非重复模式,可以根据任务情况的改变跟踪进度效果,从而反映在进度条上。
可以使用Minimum和Maximum两个属性来制定进度条的范围。默认Minimum为0,Maximum为100。当然也可
以根据自己的喜好设置,不好将进度设置超过100%,难免会让人感觉开发者数学没学好的假象。
至于ProgressBar具体的进度值,可以通过其Value值设定。而其ValueChanged事件可以监控到进度条控件值的变
化,从而利用它来实现进度跟踪的效果。
设置计时器代码:
DispatcherTimer timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromSeconds(1);
//timer.Interval = new TimeSpan(0,0,1);
timer.Tick += timer_Tick;
timer.Start();
async void timer_Tick(object sender, object e)
{
//符合要求,执行代码
.......
//不符合要求,将计时器停止,并将timer_Tick去掉
//虽然不是必须,有时候按照自己的需求来决定是否要停止或者把timer_Tick去掉
//但是在不是必须的情况下,将其停止去掉,做到有始有终也是很好的
(sender as DispatcherTimer).Tick -= timer_Tick;
(sender as DispatcherTimer).Stop();
}