Windows 8實用竅門系列:7.Windows 8 中的三種進度條和兩種定時器


  在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();
        }

        /// <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();
        }

        /// <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.rar下載。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM