2013-01-03 174 views
2

我的應用程序中的某些操作需要一些時間,我想顯示等待屏幕,以便用戶在操作完成之前可能不會執行任何操作。顯示等待屏幕WindowsPhone8

請讓我知道我該怎麼做。

回答

1

您可以編輯相框模板,並以這種方式插入特殊控制:

<Style x:Key="mainFrameStyle" TargetType="phone:PhoneApplicationFrame"> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="phone:PhoneApplicationFrame"> 
      <Border x:Name="ClientArea" BorderBrush="{TemplateBinding BorderBrush}" 
        BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" 
        HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalAlignment}"> 
        <Grid x:Name="mainFrameGrid"> 
         <ContentControl ContentTemplate="{TemplateBinding ContentTemplate}" 
           Content="{TemplateBinding Content}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" 
           HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" 
           VerticalAlignment="{TemplateBinding VerticalAlignment}" 
           VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}" /> 

         <Grid Background="Black" Visibility="{Binding IsBusy, Converter={StaticResource TrueToVisibleConverter}, Source={StaticResource FrameViewModel}}"> 
          <TextBlock Text="Loading.." VerticalAlignment="Center" HorizontalAlignment="Center"/> 
         </Grid> 
        </Grid> 
       </Border> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

,並使用此代碼在InitializePhoneApplication在App.xaml.cs將此模板():

RootFrame = new TransitionFrame(); 
    RootFrame.Style = Resources["mainFrameStyle"] as Style; 

所以所有你需要註冊一些viewmodel作爲一個靜態資源,並在需要時改變它的IsBusy屬性。

+0

謝謝,我一定會用它。是否有可能我們使用Telerik控制庫來做到這一點?我的意思是在telerik控件中有任何可用的機制? – LojiSmith