簡體   English   中英

如何在Windows Phone 8中執行某些功能后顯示吐司

[英]How to show toast after performing some functionality in windows phone 8

我想在執行某些功能后展示吐司之類的東西。 即我有一個保存按鈕,我希望它按下然后應該顯示文本記錄保存等吐司​​。我讀了顯示祝酒詞的帖子僅適用於背景代理。 我知道有人會給我很好的指導。 請注明一些代碼。

謝謝

您可以使用Coding4Fun Toolkit中Toast Prompt通過代碼執行Toast通知。 在引用工具包(理想情況下通過NuGet)后,您可以像這樣使用它:

ToastPrompt toast = new ToastPrompt();
toast.Title = "Your app title";
toast.Message = "Record saved.";
toast.TextOrientation = Orientation.Horizontal;
toast.MillisecondsUntilHidden = 2000;
toast.ImageSource = new BitmapImage(new Uri("ApplicationIcon.png", UriKind.RelativeOrAbsolute));

toast.Show();

我更喜歡我的應用程序中的ProgressIndicator ,但您可以使用PopupToastPrompt

示例項目

// popup member
private Popup popup;

// creates popup
private Popup CreatePopup()
{
    // text
    TextBlock tb = new TextBlock();
    tb.Foreground = (Brush)this.Resources["PhoneForegroundBrush"];
    tb.FontSize = (double)this.Resources["PhoneFontSizeMedium"];
    tb.Margin = new Thickness(24, 32, 24, 12);
    tb.Text = "Custom toast message";

    // grid wrapper
    Grid grid = new Grid();
    grid.Background = (Brush)this.Resources["PhoneAccentBrush"];
    grid.Children.Add(tb);
    grid.Width = this.ActualWidth;

    // popup
    Popup popup = new Popup();
    popup.Child = grid;

    return popup;
}

// hides popup
private void HidePopup()
{
    SystemTray.BackgroundColor = (Color)this.Resources["PhoneBackgroundColor"];
    this.popup.IsOpen = false;
}

// shows popup
private void ShowPopup()
{
    SystemTray.BackgroundColor = (Color)this.Resources["PhoneAccentColor"];

    if (this.popup == null)
    {
        this.popup = this.CreatePopup();
    }

    this.popup.IsOpen = true;
}

// shows and hides popup with a delay
private async void ButtonClick(object sender, RoutedEventArgs e)
{
    this.ShowPopup();

    await Task.Delay(2000);

    this.HidePopup();
}

自定義吐司消息

 using Windows.UI.Notifications;

 var toastXmlContent = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02);

 var txtNodes = toastXmlContent.GetElementsByTagName("text");
 txtNodes[0].AppendChild(toastXmlContent.CreateTextNode("First Line"));
 txtNodes[1].AppendChild(toastXmlContent.CreateTextNode("Second Line" ));

 var toast = new ToastNotification(toastXmlContent);
 var toastNotifier = ToastNotificationManager.CreateToastNotifier();
 toastNotifier.Show(toast);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM