在Windows Phone 8.1中处理响铃处于活动状态时,禁用单击事件

时间:2014-12-24 12:24:21

标签: windows-phone-8.1

我有一个XAML页面,我已经为登录提供了各种控制,每当我点击登录按钮,进程将开始验证用户,进程响铃在Login_click事件开始时被激活,它将在结束时停止那件事。 我只是想在那个过程中没有伙伴可以点击页面的任何控件。

我认为来自 c#的方法以及 XAML

的方法都是可能的



     <Grid>
            <ProgressRing   Name="prcsring1" Foreground="Black"  HorizontalAlignment="Center" VerticalAlignment="Center" Width="200" Height="200" Background="Transparent" Canvas.ZIndex="9999"/>

            <Grid  Margin="0,0,0,0" Background="White">
                <Grid.RowDefinitions>
                    <RowDefinition Height="70"  />
                    <!--1-->
                    <RowDefinition />
                    <!--2-->
                    <RowDefinition />
                    <!--3-->
                    <RowDefinition  />
                    <!--4-->
                    <RowDefinition   />
                    <!--5-->
                    <RowDefinition   />
                    <!--6-->
                    <RowDefinition    />
                    <!--7-->
                    <RowDefinition Height="25"  />
                    <!--8-->
                    <RowDefinition  Height="60"/>
                    <!--9-->
                    <RowDefinition Height="20"/>
                    <!--10-->
                    <RowDefinition />
                    <!--11-->
                    <RowDefinition Height="40"/>
                    <!--12-->
                    <RowDefinition />
                    <!--13-->
                    <RowDefinition  Height="70" />
                    <!--14-->

                </Grid.RowDefinitions>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>
                <StackPanel Grid.Column="0" Grid.Row="0"  x:Name="stackpanHead1"  Background="#424242"  />
                <Image x:Name="imgstatusGreen" Visibility="Collapsed" Source="../Images/Confirmed Images/index_green1.png"  HorizontalAlignment="Right"  Margin="0,21,10,0" VerticalAlignment="Top" Width="20"  />
                <Image x:Name="imgstatusRed" Source="../Images/Confirmed Images/index_red1.png" Visibility="Collapsed"  HorizontalAlignment="Right"  Margin="0,21,10,0" VerticalAlignment="Top" Width="20"  />
                <Image x:Name="imgstatusOrange" Source="../Images/Confirmed Images/Orange.png" Visibility="Collapsed"  HorizontalAlignment="Right"  Margin="0,21,10,0" VerticalAlignment="Top" Width="20"  />
                <TextBlock  Grid.Column="0" Grid.Row="1" HorizontalAlignment="Center" Margin="0,10,0,0" Foreground="#5C5C5C" FontSize="50"    FontWeight="Bold"  TextWrapping="Wrap" Text="Welcome to" />
                <Image Grid.Column="0" Grid.Row="2" x:Name="imglogo"    Source="../Images/alogo.png"   Margin="40,0,40,0" VerticalAlignment="Center" />
                <TextBlock  Grid.Column="0" Grid.Row="3" FontSize="30" Margin="0,0,0,0" TextWrapping="Wrap"  FontWeight="Bold" TextAlignment="Center" Text="Your Gateway to" VerticalAlignment="Top" HorizontalAlignment="Center" Foreground="#5C5C5C" />
                <TextBlock  Grid.Column="0" Grid.Row="4" FontSize="30" Margin="0,0,0,0" TextWrapping="Wrap"  FontWeight="Bold" TextAlignment="Center" Text="e-Government and Visas" VerticalAlignment="Top" HorizontalAlignment="Center" Foreground="#5C5C5C" />

                <Border Grid.Column="0" Grid.Row="5" Margin="50,5,50,5" Name="cornradusername" CornerRadius="10" Height="40"     BorderThickness="2" Background="White" BorderBrush="Black" >
                    <TextBox x:Name="txtusername"  BorderBrush="Transparent"  BorderThickness="0" VerticalAlignment="Center"   TextWrapping="Wrap" Text="" PlaceholderText="User Name" Background="White"   />
                </Border>
                <Border Grid.Column="0" Grid.Row="6" Name="cornradpass" CornerRadius="10"  Margin="50,5,50,5"  Height="40"  BorderThickness="2" Background="White" BorderBrush="Black" >
                    <PasswordBox x:Name="txtpass"  BorderBrush="Transparent"  BorderThickness="0" VerticalAlignment="Center"  PlaceholderText="Password" Background="White" />
                </Border>

                <TextBlock Grid.Column="0" Grid.Row="7" Name="lblwrong"  FontSize="15" Margin="0,0,0,0" TextWrapping="Wrap"  TextAlignment="Center" Text="" FontWeight="Bold" VerticalAlignment="Top" HorizontalAlignment="Center" Foreground="Red" Width="390"/>

                <TextBlock  Grid.Column="0" Grid.Row="8" FontSize="15" Margin="0,0,0,0" TextWrapping="Wrap"  TextAlignment="Center" Text="Enter credentials To Authenticate" HorizontalAlignment="Center" Foreground="#5C5C5C"/>

                <WebView Grid.Column="0" Grid.Row="9" Name="WebView2" Margin="0,0,0,0"  Width="360"  Height="30" HorizontalAlignment="Center" />

                <HyperlinkButton Grid.Column="0" Grid.Row="10" Foreground="#086A87" FontFamily="Arial Black"    FontWeight="Bold" FontSize="20" Content="Forgot password? click here.."  HorizontalAlignment="Center" Click="HyperlinkButton_Click"/>
                <Grid Grid.Column="0" Grid.Row="11" Margin="0,0,0,0" Background="White">
                    <Grid.RowDefinitions>
                        <RowDefinition />
                    </Grid.RowDefinitions>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="*" />
                    </Grid.ColumnDefinitions>
                    <Button Grid.Column="0" Grid.Row="0" Content="Login"  Margin="0,0,5,0"  x:Name="btnlogin1"     HorizontalAlignment="Right"     Click="Button_Click" BorderThickness="0" Foreground="White">
                        <Button.Background>
                            <ImageBrush   ImageSource="../Images/button_green.png"/>
                        </Button.Background>
                    </Button>
                    <Button Grid.Column="1" Grid.Row="0" Margin="5,0,0,0" Content="New User" x:Name="btnnewuser1"  HorizontalAlignment="left"   BorderThickness="0" Foreground="White">
                        <Button.Background>
                            <ImageBrush Stretch="Fill"  ImageSource="../Images/button_green.png"/>
                        </Button.Background>
                    </Button>
                </Grid>

                <TextBlock  Grid.Column="0" Grid.Row="12" VerticalAlignment="Center" FontSize="15" Margin="0,0,0,0" TextWrapping="Wrap"  TextAlignment="Center" Text="Version: 1.79"  HorizontalAlignment="Center" Foreground="#5C5C5C"/>
                <StackPanel Grid.Column="0" Grid.Row="13"  x:Name="Add"  Background="Aqua"   />
            </Grid>
        </Grid>
&#13;
&#13;
&#13;

&#13;
&#13;
 private async void Button_Click(object sender, RoutedEventArgs e)
    {
                         Ringprocess_Activate(prcsring1);
                
----------------------My Code for Process--------------------
                          Ringprocess_DeActivate(prcsring1);
}
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

可以像

一样简单
private async void Button_Click(object sender, RoutedEventArgs e)
{
     this.IsEnabled = false;                // disable the page
     Ringprocess_Activate(prcsring1);

     // .. your code

     Ringprocess_DeActivate(prcsring1);
     this.IsEnabled = true;                 // enable the page
}

如果你这样做,请确保注释掉启用“禁用”状态的任何StoryBoard,否则,它会使你可能不想要的那些RingProcess控件上的控件变灰。