且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Windows 8实用窍门系列:7.Windows 8 中的三种进度条和两种定时器

更新时间:2022-09-13 21:00:05

 在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毫秒运行的定时器。

    关键代码:

Windows 8实用窍门系列:7.Windows 8 中的三种进度条和两种定时器
       private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            DelayTimer();
        }

        /// <summary>
        /// 延迟定时器
        /// </summary>
        private void DelayTimer()
        {
            //设置延迟定时器
            ThreadPoolTimer tptimer = ThreadPoolTimer.CreateTimer(async (timer) =>
            {
                await Dispatcher.RunAsync(
                    CoreDispatcherPriority.High, () =>
                    {
                        this.probar1.Value += 20;
                    });
            }, TimeSpan.FromMilliseconds(3000));
        }
Windows 8实用窍门系列:7.Windows 8 中的三种进度条和两种定时器

  循环定时器:循环运行N次,每次延迟X毫秒的定时器。

    关键代码:

Windows 8实用窍门系列:7.Windows 8 中的三种进度条和两种定时器
        private void Button_Click_2(object sender, RoutedEventArgs e)
        {
            PeriodicTimer();
        }

        /// <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));
        }
Windows 8实用窍门系列:7.Windows 8 中的三种进度条和两种定时器

  最后我们来看运行效果图和如需源码请点击Win8Progress.rar下载。

Windows 8实用窍门系列:7.Windows 8 中的三种进度条和两种定时器



本文转自程兴亮博客园博客,原文链接:http://www.cnblogs.com/chengxingliang/archive/2012/11/05/2743809.html,如需转载请自行联系原作者