如何在应用程序运行时在Windows Phone中显示Toast?

时间:2014-02-25 16:55:03

标签: c# windows-phone-7

在我的Windows Phone应用中,有两个按钮。我想在该按钮的toast事件上显示一些有用的click。我已经探索了一些东西来展示吐司,但它只适用于background个应用程序。在应用程序运行时,是否有任何简单的方法来显示Toast消息。任何帮助!

2 个答案:

答案 0 :(得分:3)

是的,

  1. 滚动自己,使用教程here作为基础。或者,
  2. The coding for fun toolkit
  3. Coding for fun工具包

    安装nuget包> Install-Package Coding4Fun.Toolkit.Controls

    在你的xaml

    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
           <Button Content="Show Toast" VerticalAlignment="Top" Click="ShowToast" />
    </Grid>
    

    在您的代码中:

    private void ShowToast(object sender, RoutedEventArgs e)
       {
           var toast = new ToastPrompt
           {
               Title = "The Title",
               Message = "A message",
               FontSize = 50,
               TextOrientation = System.Windows.Controls.Orientation.Vertical,
               ImageSource = new BitmapImage(new Uri("ApplicationIcon.png", UriKind.RelativeOrAbsolute))
           };
    
           toast.Show();
       }
    

    详细了解如何自定义here

答案 1 :(得分:0)

如果您想使用推送通知并希望在应用程序位于前台时截取Toast消息,则可以使用如下所示的内容。请注意,这使用了FunksMaName提到的Coding 4 Fun提示。

在设置频道时(以及每次应用启动时)设置事件处理程序

 CurrentChannel.ShellToastNotificationReceived += CurrentChannel_ShellToastNotificationReceived;

然后处理事件

 void CurrentChannel_ShellToastNotificationReceived(object sender, NotificationEventArgs e)
    {
        Deployment.Current.Dispatcher.BeginInvoke(() =>
           {
               ToastPrompt prompt = new ToastPrompt()
               {
                   TextOrientation = System.Windows.Controls.Orientation.Vertical,
                   Title = e.Collection["wp:Text1"],
                   Message = e.Collection["wp:Text2"],
                   ImageSource = new BitmapImage(new Uri(<image URI here>, UriKind.RelativeOrAbsolute))
               };
               prompt.Show();
           });
    }