如何在页面加载时显示ProgressBar控件?

时间:2010-11-22 00:17:18

标签: c# windows-phone-7 progress-bar

我有几页的WP7应用程序。当用户浏览它们时,加载信息需要一些时间。因此,在向他/她显示页面之前,我想显示“正在加载...”消息。 我创建了进度条并将其放在页面上:

    <StackPanel x:Name="progressBarMain" Grid.Row="1" Grid.ColumnSpan="2" Visibility="Collapsed">
        <TextBlock Text="Loading..." HorizontalAlignment="Center" VerticalAlignment="Center" />
        <ProgressBar Margin="10" Height="30" IsIndeterminate="True"/>
    </StackPanel>

我试图在页面的构造函数中显示它(并隐藏其他所有内容),并在Page.Loaded处理程序中隐藏它(并显示其他所有内容)。

    public SomePage()
    {
        InitializeComponent();

        Loaded +=OnSomePageLoaded;
        progressBarMain.Visibility = Visibility.Visible;
        ContentPanel.Visibility = Visibility.Collapsed;
    }

    private void OnSomePageLoaded(object sender, RoutedEventArgs e)
    {
        progressBarMain.Visibility = Visibility.Collapsed;
        ContentPanel.Visibility = Visibility.Visible;
    }

但它不起作用。 有任何想法吗?谢谢!

3 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

虽然您无法直接操作启动画面(这是静态的),但您可以显示弹出窗口(顺便说一下,这正是Alex解决方案中所做的)并等待后台(读取:加载)操作完成

答案 2 :(得分:0)

是的,您需要创建一个单独的XAML弹出页面,该页面在应用程序启动时加载。有关启动屏幕的更多详细信息,请参阅MSDN的代码示例:

"Code Sample for Splash Screen"

相关问题