显示进度条

时间:2014-04-11 02:58:36

标签: windows-phone progress-bar

我的主页面中有一个图像控件,代码如下:

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <StackPanel HorizontalAlignment="Left" Height="597" VerticalAlignment="Top" Width="440">
        <Image x:Name="hinh1" Height="488" Stretch="Fill"/>
        <ProgressBar Name="loading" Height="10" IsIndeterminate="True" Visibility="Collapsed"/>
    </StackPanel>
</Grid>

在后面的代码中我有这段代码:

   Uri hinh = new Uri
          ("http://taigamejar.net/wp-content/uploads/2014/01/Hinh-Anh-Dep-5.jpg", UriKind.Absolute);
        hinh1.Source = new BitmapImage(hinh);

在等待加载图像时,我想调用进度条运行以通知用户它正在加载。加载图像后,进度条应消失。我怎么能这样做?

1 个答案:

答案 0 :(得分:3)

如果我是你,我更愿意使用,而不是ProgressBar。

所以,我会给出

protected override void OnNavigatedTo(NavigationEventArgs e)
{
    loading.IsActive = true;
    Uri hinh = new Uri
    ("http://taigamejar.net/wp-content/uploads/2014/01/Hinh-Anh-Dep-5.jpg", UriKind.Absolute);
    hinh1.Source = new BitmapImage(hinh);

    hinh1.ImageOpened+=hinh1_ImageOpened; //loadingbar will be disappear when this triggered
}

private void hinh1_ImageOpened(object sender, RoutedEventArgs e)
{
    loading.IsActive = false; //this will disable the progressring.
}

和XAML:

    <StackPanel HorizontalAlignment="Left" Height="597" VerticalAlignment="Top" Width="400">
        <Image x:Name="hinh1" Height="488" Stretch="Fill" ImageOpened="hinh1_ImageOpened"/>
        <ProgressRing Name="loading" Height="109" IsActive="True"  />
    </StackPanel>

如果您还没有WP8.1 SDK,可以在此处获取ProgressRing:http://www.onurtirpan.com/onur-tirpan/english/windows-phone-english/using-progressring-in-windows-phone/