Silverlight ProgressBar 控制項的使用

RojerChen.2011.11.04

過去在寫 Windows Form 的程式的時候,有時候會需要使用到 ProgressBar 來實作進度表,程式大概會這樣寫

for(int i=0;i<=100;i++){
    Progressbar.value = i;
    Application.DoEvent();
    sleep(10);
}


只不過在 Silverlight 上,沒有辦法這樣用,沒有 Application.DoEvent(),要讓畫面有進度的處理,必須使用 DispatcherTimer來去做。

using System.Windows.Thread;
DispatcherTimer Timer1;

void Timer1_Tick(object sender, EventArgs e) {
  progressBar1.Value = count;
  count += 1;
  label1.Content = count.ToString() + "%";

  if (count == 100) {
    Timer1.Stop();
  }
}

另外 Timer 的啟動和關閉不一樣,是Start和Stop,不是 Enable和 Disable。

    Blogger Comment

0 意見: