NavigationService.NavigationProgress 事件

定义

在下载过程中定期发生,用于提供定位进度信息。

public:
 event System::Windows::Navigation::NavigationProgressEventHandler ^ NavigationProgress;
public event System.Windows.Navigation.NavigationProgressEventHandler NavigationProgress;
member this.NavigationProgress : System.Windows.Navigation.NavigationProgressEventHandler 
Public Custom Event NavigationProgress As NavigationProgressEventHandler 

事件类型

示例

以下示例演示如何处理 NavigationProgress

void NavigationService_NavigationProgress(object sender, NavigationProgressEventArgs e)
{
    string msg = string.Format("{0} of {1} bytes retrieved.", e.BytesRead, e.MaxBytes);
    this.progressStatusBarItem.Content = msg;
}
Private Sub NavigationService_NavigationProgress(ByVal sender As Object, ByVal e As NavigationProgressEventArgs)
    Dim msg As String = String.Format("{0} of {1} bytes retrieved.", e.BytesRead, e.MaxBytes)
    Me.progressStatusBarItem.Content = msg
End Sub

注解

NavigationProgress 传递了一个 NavigationProgressEventArgs ,它公开了以下进度信息:

  • 到目前为止下载的字节数 (BytesRead) 。

  • 要下载 () MaxBytes 的总字节数。

NavigationProgress 对于每下载 1024 个字节的内容,将引发一次;如果剩余字节数永远小于 1024 字节,则再引发一次。 出于此原因,处理 NavigationProgress 提供了一种有用的方法来跟踪和显示当前下载的进度。

NavigationProgress 在某些情况下,不会引发,例如,当导航到同一部分内容时,或者在当前加载 (的内容上导航到内容片段时,属性的值 Content) 。

导航到已编译的 XAML 资源时,可能不会引发最终 NavigationProgress 事件。 这意味着在下载结束时,上次报告 BytesRead 的值可能不等于该值 MaxBytesLoadCompleted处理在导航完成后收到通知的事件。

注意

当引发 NavigationProgressNavigationService,它还会Application.NavigationProgress引发 对象上的 Application 事件。

适用于

另请参阅