2016-05-18 10 views
0

Ich habe eine Datei mit meinen Erinnerungen aus meiner Klasse. Zur richtigen Zeit habe ich eine Benachrichtigung. Ich schaffe Benachrichtigung mit NotificationExtensionWie funktionieren interaktive Benachrichtigungen in uwp-Apps?

ToastContent content = new ToastContent() 
    { 
     Launch = "OrangeReminder", 

     Visual = new ToastVisual() 
     { 
      TitleText = new ToastText() 
      { 

       Text = "OrangeReminder" 
      }, 

      BodyTextLine1 = new ToastText() 
      { 
       Text = "" 
      }, 
      BodyTextLine2 = new ToastText() 
      { 
       Text = "" 
      }, 
     }, 
     Actions = new ToastActionsCustom() 
     { 
      Buttons = 
      { 
       new ToastButton("Done", "1") 
       { 
        ActivationType = ToastActivationType.Background, 
       } 
      } 
     }, 

    }; 

Und ich erstellen Background Aufgabe

namespace BackgroundTasks 
{ 
public sealed class ToastNotificationBackgroundTask : IBackgroundTask 
{ 
    public void Run(IBackgroundTaskInstance taskInstance) 
    { 
     var details = taskInstance.TriggerDetails as ToastNotificationActionTriggerDetail; 
     var arguments = details.Argument; 
     //??? 
    } 

Was ich in der Hintergrundaufgabe schreiben, um eine Erinnerung aus meiner Datei zu entfernen, wenn die Taste drücken in Benachrichtigungen? Ich denke, ich brauche meine Erinnerungs-ID? wie bekommt man es?

+0

Für die Frage über die Erinnerung ID, habe ich eine Antwort unten geschrieben. Wie kann ich eine Erinnerungs-ID aus einer Datei entfernen? Was bedeutet die Datei? Ist es eine Datei im lokalen Speicher? Ich bin etwas neugierig :) –

+0

Ich habe die Datei "AllReminder.json" in der Datei Ich habe Sammlung. Und ich bin gerade Datei laden Sammlung laden und entfernen Sie „entfernen (GetRemObject) – SuxoiKorm

+0

versuche ich diese if (Argumente ==. "1") { Loadfile(); DS.AllRem.RemoveAt (1); } Aber seine Arbeit nicht.Meldungen verschwinden nicht.Und Erinnerung nicht entfernen – SuxoiKorm

Antwort

0

Was schreibe ich im Hintergrund Aufgabe, um eine Erinnerung aus meiner Datei zu entfernen, wenn die Schaltfläche in Benachrichtigungen drücken? Ich denke, ich brauche meine Erinnerungs-ID? wie bekommt man es?

zuerst Ihre Erinnerung ID erhalten und in das Argument des ToastContent gesetzt:

// get your Reminder Id 
string reminderID = GetReminderID(); 

ToastContent content = new ToastContent() 
{ 
    ... 
    Actions = new ToastActionsCustom() 
    { 
     Buttons = 
     { 
      // set your Reminder ID into the Argument to pass it to the background task 
      new ToastButton("Done", reminderID) 
      { 
       ActivationType = ToastActivationType.Background, 
      } 
     } 
    }, 
}; 

Dann können Sie Ihre Erinnerung Id in Background Aufgabe bekommen durch die Argument:

public sealed class ToastNotificationBackgroundTask : IBackgroundTask 
{ 
    public void Run(IBackgroundTaskInstance taskInstance) 
    { 
     var details = taskInstance.TriggerDetails as ToastNotificationActionTriggerDetail; 
     // get your Reminder Id in Background task through the Argument 
     var reminderID = details.Argument; 
    } 
} 
Verwandte Themen