2010-11-22 95 views
3

我有几个页面的WP7应用程序。当用户浏览它们时,需要一些时间来加载信息。因此,在显示他/她的页面之前,我想显示“加载...”消息。 我创建进度条,并把它放在网页上:如何在页面加载时显示ProgressBar控件?

<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> 

和我想要显示它(并隐藏一切),在页面的构造函数,隐藏它(并显示一切)页面。加载处理程序。

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; 
    } 

但它不工作。 任何想法?谢谢!

回答

2

亚历克斯演示显示进度条,而应用程序在这里启动。

Creating a Splash Screen with a progress bar for WP7 applications. - Alex Yakhnin's Blog

+0

谢谢!我使用该解决方案。我还发现了另一个:http://msdn.microsoft.com/en-us/library/gg442303(v=VS.92).aspx – 2010-11-24 13:56:43

+0

请注意,如果您打算使用不确定的进度条,那么您应该查看PerformanceProgressBar - http://www.jeff.wilcox.name/2010/08/performanceprogressbar/目前的ootb在很多情况下表现不佳,而我确定他们最终会修复它,在同时你应该使用PerformanceProgressBar。 :) – 2010-11-30 21:22:32

0

虽然不能直接操作闪屏(这是静态的),可以显示一个弹出(顺便说一句,这正是在Alex的溶液中进行),并等待一个背景(读:loading)操作完成。