Windows 8技巧:Windows 8 中的三种进度条和两种定时器的使用技巧
Windows  /  管理员 发布于 6年前   374
在Windows 8中的默认进度条也与时俱进,和之前Silverlight中的不一样。本文将讲述三种不同的进度条,另外在本文中也会将两种定时器。
进度条
主要属性:
Value:当前进度值。
Maximum:最大进度值。
IsIndeterminate:指定进度条是否确定。
确定进度条:进度明确的进度条,已完成进度以另外一种颜色显示
关键代码:
<ProgressBar Maximum="100" Value="0" Height="20" Name="probar1" IsIndeterminate="False" Margin="275,167,966,581"></ProgressBar>
不确定进度条:进度不明确的进度条,不可预知当前进度
关键代码:
<ProgressBar IsIndeterminate="True" Width="80" Height="10" Margin="600,167,566,591"/>
不确定进度环:进度不明确的进度环,不可预知当前进度
关键代码:
<ProgressRing IsActive="True" Height="58" Margin="1000,167,299,543" Width="67"/>
定时器
延迟定时器:只运行一次,延迟X毫秒运行的定时器。
关键代码:
复制代码代码如下:
private void Button_Click_1(object sender, RoutedEventArgs e)
{
DelayTimer();
}</p><p> /// <summary>
/// 延迟定时器
/// </summary>
private void DelayTimer()
{
//设置延迟定时器
ThreadPoolTimer tptimer = ThreadPoolTimer.CreateTimer(async (timer) =>
{
await Dispatcher.RunAsync(
CoreDispatcherPriority.High, () =>
{
this.probar1.Value += 20;
});
}, TimeSpan.FromMilliseconds(3000));
}
循环定时器:循环运行N次,每次延迟X毫秒的定时器。
关键代码:
复制代码代码如下:
private void Button_Click_2(object sender, RoutedEventArgs e)
{
PeriodicTimer();
}</p><p> /// <summary>
/// 循环定时器
/// </summary>
private void PeriodicTimer()
{
//循环定时器
ThreadPoolTimer tptimer = ThreadPoolTimer.CreatePeriodicTimer(
async (timer) =>
{
await Dispatcher.RunAsync(
CoreDispatcherPriority.High, () =>
{
this.probar1.Value = this.probar1.Value + 1;
});
},
TimeSpan.FromMilliseconds(100));
}
最后我们来看运行效果图和如需源码请点击Win8Progress_jb51net 下载。效果如下图
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号