2016-01-16 20 views
6

entwickelt derzeit eine Universal-Windows-Plattform-Anwendung kann nicht den Parameter zugreifen auf der navigatedto SeiteZugriff auf einen Parameter übergeben zwischen UWP Seiten

-Code für das Bestehen der Parameter:

var ente = this.DataGrid.SelectedItem as Ente; 
      var Id = ente.Id; 
      Frame.Navigate(typeof(EntiEdit), Id); 

und hier ist die „NavigatedTo "Seite

protected override void OnNavigatedTo(NavigationEventArgs e) { 
     string Id = e.Parameter as string; 
     } 

Wie kann ich diese Zeichenfolge in meinen anderen Methoden verwenden? Die Ereignisüberschreibung ist geschützt, sodass ich nicht auf ihren Inhalt zugreifen kann.

Vielen Dank im Voraus

Antwort

8

Sie sollten die Parameter der Klasse Feld oder eine Eigenschaft auf Zugang speichern:

public class EntiEdit : Page 
{ 
    private string _entityId; 

    protected override void OnNavigatedTo(NavigationEventArgs e) 
    { 
     _entityId = e.Parameter as string; 
    } 
} 

Wenn Sie einige Behandlung nach der Seite initiieren müssen navigieren Sie es tun können von der Ereignisbehandlungsroutine:

protected override void OnNavigatedTo(NavigationEventArgs e) 
{ 
    var entityId = e.Parameter as string; 
    EntityData = LoadEntity(entityId); 
    DoSomeOtherRoutine(entityId); 
} 
Verwandte Themen