Есть ли способ получить URL-адрес предыдущей страницы в навигационном приложении Silverlight?

Есть ли способ получить URL-адрес предыдущей страницы в навигационном приложении Silverlight. Я использую навигационный сервис.


person Community    schedule 06.05.2013    source источник


Ответы (2)


Нет возможности получить историю навигации, вы можете сохранить ее самостоятельно, прослушав событие службы навигации NavigationService.Navigated (или Frame.Navigated для навигации по кадрам).

private List<Uri> _navigationHistory = new List<Uri>();

void  onNavigated(object sender, NavigationEventArgs e)
{
    _navigationHistory.Add(e.Uri);
}

private Uri getBackUri()
{
        return _navigationHistory.Count > 1
            ? _navigationHistory[_navigationHistory.Count - 2]
            : null;
}
person Tonio    schedule 06.05.2013
comment
Спасибо, Тонио ... я использовал параметр навигации :), но ваш ответ также мне помогает ... спасибо :) - person ; 06.05.2013
comment
У меня есть идея, что нет другого способа получить предыдущий URL-адрес, кроме как сохранить его в каком-то списке в Silverlight :( - person ; 06.05.2013

Существует способ, с помощью которого вы можете получить URL-адрес предыдущей страницы перед обратной передачей.

if (!IsPostBack)
{
 Session["PrvPageUrl"] = Request.UrlReferrer.ToString();
}

Это может помочь вам.

person Dany    schedule 06.05.2013
comment
Это не для приложения Silverlight. Радж использует службу навигации с Silverlight;) - person Tonio; 06.05.2013