Вернуться в WebBrowser - PullRequest
       1

Вернуться в WebBrowser

0 голосов
/ 14 ноября 2011

Я не могу найти никаких пояснений по этому поводу.У меня есть элемент управления WebBrowser для моего приложения C # для Windows Phone, и я хотел бы иметь кнопку, чтобы вернуть пользователя на одну страницу назад.Как я могу это сделать?(Я знаю, как сделать кнопку или получить доступ к физической кнопке возврата, вопрос только в том, как заставить функцию вернуть пользователя на одну страницу назад.

Спасибо.

РЕДАКТИРОВАТЬ: Также, если не к чему возвращаться, я бы хотел запустить другую функцию, если это возможно.

РЕДАКТИРОВАТЬ: Попробовал это: browser.InvokeScript("eval", "history.go(-1)");, по какой-то причине он не работает. Он просто закрывает приложение.

РЕДАКТИРОВАТЬ: вышеперечисленное работает с e.Cancel = true;, но как мне восстановить функцию по умолчанию, если нет страницы, к которой можно вернуться ...?

1 Ответ

1 голос
/ 14 ноября 2011

В этой теме есть несколько предложений , которые могут сработать, тем более что вам не нужно беспокоиться о нескольких браузерах.Одним из способов является использование свойства history.length:

if(history.length > 0)
{
  //go back
}
else
{
  //cannot go back so perform other function
}

Другой способ, предложенный в этом потоке, заключается в проверке реферера.На первой странице обычно нет реферера:

if (document.referrer == "") {
    window.close()
} else {
    history.back()
}

Вызовите эти скрипты так же, как вы вызывали скрипт history.go() и посмотрите, работает ли он.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...