Доступ к параметру, переданному между страницами UWP

в настоящее время разрабатывается Универсальное приложение платформы Windows, не может получить доступ к параметру на странице navigatedto

код для передачи параметра:

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

и вот страница "NavigatedTo"

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

Как я могу использовать эту строку в мой другие методы? Контрольное событие защищен, поэтому я не могу получить доступ к его содержимому.

спасибо заранее

1 ответов


вы должны сохранить параметр в поле класса или свойство, чтобы иметь к нему доступ:

public class EntiEdit : Page
{
    private string _entityId;

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

Если вам нужно инициировать некоторую обработку после навигации по странице, вы можете сделать это из обработчика событий:

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