加载Charm菜单注销服务调用的指示符

时间:2013-09-17 11:33:40

标签: windows-runtime windows-store-apps

我在Windows 8.1商店应用的魅力菜单中有注销选项。当用户点击魅力菜单中的注销选项时,我正在点击服务电话。

在上述情况下,我应该在应用程序屏幕中显示加载进度条。我的问题是用户可以是我的应用程序中的任何一个屏幕

有没有通用的方法来实现同样的目标?

1 个答案:

答案 0 :(得分:1)

我的应用程序中有类似的功能。当点击/点击按钮时(在FlyOut中,而不是直接在Charms中),执行可公开访问的Sub(在模块中):

Public Sub OpenModalBackground(Optional ByVal strProgressText As String = "")
    pupModalBackground = New Popup
    pupModalBackground.IsLightDismissEnabled = False
    pupModalBackground.Width = Window.Current.Bounds.Width
    pupModalBackground.Height = Window.Current.Bounds.Height

    Dim foModalBackground As New FlyOuts.ModalBackground
    foModalBackground.Width = Window.Current.Bounds.Width
    foModalBackground.Height = Window.Current.Bounds.Height
    foModalBackground.ProgressText = strProgressText
    pupModalBackground.Child = foModalBackground

    pupModalBackground.SetValue(Canvas.LeftProperty, 0)
    pupModalBackground.SetValue(Canvas.TopProperty, 0)
    pupModalBackground.IsOpen = True
End Sub

正如您所看到的,生成了一个新的PopUp,并加载了一个“FlyOut”(UserControl)ModalBackground,如下所示:

<Grid Background="#BF000000">
    <StackPanel Orientation="Vertical" VerticalAlignment="Center" HorizontalAlignment="Center">
        <ProgressRing IsActive="True" Foreground="White" Width="50" Height="50" HorizontalAlignment="Center"/>
        <TextBlock FontSize="15" FontWeight="SemiLight" Margin="0,20,0,0" HorizontalAlignment="Center" Text="{Binding ProgressText}"/>
    </StackPanel>
</Grid>

它对我有用。 据我所见,Win8.1有一个新的Control FlyOut,所以你可以使用那个而不是UserControl。

顺便说一句:根据这些Guidelines,您不应该从入口点执行直接操作。