Windows Phone 8 消息框问题
本文关键字:问题 消息 Phone Windows | 更新日期: 2023-09-27 18:34:38
>过程:当屏幕中显示 MessageBox.时,用户锁定手机或按开始按钮,然后返回应用
按照上述步骤操作时,您将永远不会看到在开始上述程序之前出现的消息框,相反,即使在确定取消选项中,电话也会选择默认值。会是什么情况,我将如何解决?
我认为避免此问题的唯一方法是创建自己的弹出视图作为消息框。
MessageBox 在打开时会抑制主应用程序线程,当您按下锁屏按钮时,应用程序,每个活动线程都会在后台运行。主活动应用线程被激活,内部生成的消息框线程不会被激活。
VisualTreeHelper.GetOpenPopups((; 是检查所有打开的弹出窗口的方法。 但最好和最一致的解决方案是使用自定义弹出窗口,即用 XAML 制作的消息框。 它们永远不会作为单独的线程出现,阻止主 UI 线程。
像这样的自定义用户控件可能会有所帮助
<Border Name="bdrLeave" Visibility="Collapsed">
<Border.Background>
<ImageBrush Stretch="Fill" ImageSource="/Images/LoderBackground.png"/>
</Border.Background>
<StackPanel>
<StackPanel>
<StackPanel.Background>
<ImageBrush Stretch="Fill" ImageSource="/Images/Backgrounds/Main_BG.jpg"/>
</StackPanel.Background>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
<TextBlock Text="Heading" HorizontalAlignment="Center" Foreground="#FF001C68" FontWeight="Bold" Margin="0,20,150,0"/>
<Button content="Close"/>
</StackPanel>
<TextBlock Text="Message" TextWrapping="Wrap" HorizontalAlignment="Center" Foreground="#FF001C68" Margin="0,20,0,0"/>
<StackPanel Margin="0,20,0,20" Orientation="Horizontal" HorizontalAlignment="Center">
<Button Content="Content" Width="130"/>
<Button Content="Content" width "130"/>
</StackPanel>
</StackPanel>
</StackPanel>
</Border>