none
Umbau von legacy Toasts auf Adaptive Toasts Activation argument RRS feed

  • Allgemeine Diskussion

  • Guten Abend

    Bisher habe ich in meiner App die Legacy-Taostbenachrichtigungen verwendet. Dabei habe ich in der App.xaml.cs im

    protected async override void OnLaunched(LaunchActivatedEventArgs e)


    jeweils den string aus dem e.Arguments ausgelesen und dementsprechend reagiert. Hier ein Beispiel

    if (e.Arguments.ToString() == "settings")
    {
       rootFrame.Navigate(typeof(SettingsPage), e.Arguments);
    }

    Nun würde ich gerne auf die adaptiven Toastbenachrichtigungen umstellen. Die Toastbenachrichtigungen an sich sind kein Problem, das funktioniert soweit. In der aktuellen MSDN Resource habe ich nun gelesen, dass der neue Aktivierungshandler über

    async protected override void OnActivated(IActivatedEventArgs args)

    aufgerufen wird. Ist das korrekt, dass dies nun so funktioniert? Wenn ja, wie muss ich da vorgehen, dass ich je nach Toastbenachrichtigung auf einer anderen Seite in meiner App lande, dabei aber die MainPage, welche das "HamburgerMenü" bereitstellt, trotzdem mit eingebunden wird?

    Entweder stehe ich gerade völlig auf dem Schlauch oder habe etwas übersehen.

    Mit freundlichen Grüssen

    Freitag, 5. August 2016 18:24

Alle Antworten

  • Hallo andy-dev,

    In einem Blogeintrag wird das Verfahren mit der Umwandlung (Cast) von IActivatedEventArgs als ToastNotificationActivatedEventArgs veranschaulicht. Daraufhin wird die ToastNotificationActivatedEventArgs.Argument-Eigenschaft mit dem erwarteten Wert verglichen. Sieh Dir den Blogeintrag (insbesondere den Abschnitt Handling activation from a toast notification) an:
    Quickstart: Sending a local toast notification and handling activations from it (Windows 10)

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Dienstag, 9. August 2016 08:11
    Moderator
  • Hallo Dimitar

    Danke für deine Antwort. Die Links sind sehr hilfreich, allerdings habe ich da trotzdem ein Problem. Aktuell wird bei mir in der app.xaml.cs im OnLaunched - Event der e.Arguments Parameter nach dem Inhalt geprüft und anhand dessen die Aktion bzw. die Navigation auf die entsprechende Seite ausgeführt. Mit den neuen Adaptive Toastbenachrichtigungen passiert dies ja im OnActivated EventHandler. Ich verstehe daher nicht ganz, wann bzw. unter welchen Umständen dann genau welches Event gefeuert wird. Da ich z.b. im OnLaunched Event noch einige Initialisierungen drin habe, müsste ich diese dann gezwuingenermassen auch im OnActivated Event aufrufen lassen, ist das richtig?

    Mit freundlichen Grüssen

    Sonntag, 14. August 2016 12:51
  • Hallo andy-dev,

    Da ich z.b. im OnLaunched Event noch einige Initialisierungen drin habe, müsste ich diese dann gezwungenermassen auch im OnActivated Event aufrufen lassen, ist das richtig?

    Soweit ich verstanden habe, ist das richtig. Bist Du inzwischen weitergekommen?

    Gruß,
    Dimitar


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Montag, 29. August 2016 12:50
    Moderator
  • Hallo Dimitar

    Bisher habe ich daran noch nichts umgestellt, da aktuell mit den Legacy Toasts alles läuft. Ich wollte mir zuerst alle notwendigen Informationen zusammensuchen, bevor ich mit dem umschreiben beginne.

    Mit freundlichen Grüssen 

    Montag, 29. August 2016 16:25
  • So bin nun endlich dazu gekommen, das ganze umzusetzen. Meine Initialisierungen habe ich mehrere Methoden ausgelagert, so kann ich aus dem OnLaunched und dem OnActivated Event diese jeweils aufrufen. Hat man das ganze einmal umgebaut und versteht das verhalten, ist es soweit kein Problem mehr, dass nun zwei unterschiedliche EventHandler genutzt werden (müssen). Vielen Dank noch einmal für die Hilfe.

    Mit freundlichen Grüssen


    • Bearbeitet andy-dev Dienstag, 22. November 2016 16:42
    Dienstag, 22. November 2016 16:41