0

在MainPage中我有一個按鈕。當用戶點擊該按鈕時,我正在初始化進度指示器變量。但它不是初始化的,它在調試時顯示爲空。 那麼,我們應該如何在Windows Phone 8中顯示進度指示器來完成某些任務。ProgressIndicatior未初始化

以下是我的代碼。

ProgressIndicator pi; 

private void search_button_clicked(object sender, RoutedEventArgs e) 
{ 
    pi = Microsoft.Phone.Shell.SystemTray.ProgressIndicator; 
    //Show the indicator 
    pi.IsVisible = true;//Here I'm getting null reference exception 

    ........here the code for download xml file by calling web service............ 
} 

我不明白爲什麼Progress Indicator變量沒有初始化。

+0

它總是空。您需要創建並設置它。 – Paul

回答

0

,你可以嘗試這個...

 private void ShowProgressIndicator(String msg) 
     { 
      if (ProgressIndicator == null) 
      { 
       ProgressIndicator = new ProgressIndicator(); 
       ProgressIndicator.IsIndeterminate = true; 
      } 

      ProgressIndicator.Text = msg; 
      ProgressIndicator.IsVisible = true; 
      SystemTray.SetProgressIndicator(this, ProgressIndicator); 
     } 


     private void HideProgressIndicator() 
     { 
      ProgressIndicator.IsVisible = false; 
      SystemTray.SetProgressIndicator(this, ProgressIndicator); 
     } 

,然後在你的按鈕點擊

private void search_button_clicked(object sender, RoutedEventArgs e) 
{ 
    ShowProgressIndicator("Searching"); 
} 

我希望這可以幫助你.....