2011-11-13 5 views
0

나는 이것에 doucmentation을 찾을 수 없습니다. 나는 C# Windows Phone app에 대해 WebBrowser 컨트롤을 가지고 있으며 사용자에게 한 페이지 뒤로 가져갈 버튼이 있습니다. 어떻게해야합니까? (I 버튼을 만들거나 물리적 뒤로 버튼에 액세스하는 방법을 알고, 질문은 그냥 한 페이지를 사용자을하는 함수를 만드는 방법에 관한 것입니다위로 WebBrowser로 돌아 가기

감사

편집 :.. 또한, 아무것도 존재하지 않는 경우 나는 가능하면 다른 기능을 실행하고 싶습니다 돌아갈

편집 :.이 시도 : browser.InvokeScript("eval", "history.go(-1)");, 어떤 이유로 작동하지 않습니다 그냥 응용 프로그램을 닫습니다

편집 :.. 위의 작업이있어 e.Cancel = true;으로 표시되지만 다시 돌아갈 페이지가없는 경우 어떻게 기본 기능을 복원합니까?

+0

[하드웨어 백 버튼 처리 및 Windows Phone에서 실행중인 WebBrowser 컨트롤로 전송] (http://stackoverflow.com/questions/5100538/handling-hardware-back-button-and-sending-it-to) -webbrowser-control-running-on-wi) – BrokenGlass

+0

중복 유형이지만 종류는 다릅니다. 그 링크가 도움이되었지만 여전히 대답해야 할 질문이 있습니다. – JacobTheDev

답변

1

여러 브라우저에 대해 걱정할 필요가 없기 때문에 in this thread 두 가지 제안이 있습니다. 한가지 방법은`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() 스크립트를 호출 같은 방식으로 호출하고 그 작동되는지 확인합니다.

+0

분명히 전에이 질문을했습니다. 그럼이 자바 스크립트 나 C# 그럼? JavaScript와 같은데, 나는 이것을 할 방법을 생각해야 할 것입니다 ... – JacobTheDev

+0

내가 가지고있는 문제는 그것이 반대의 방식으로 질문에 답하는 것입니다. 기본적으로 C#으로 확인해야합니다 ... 조금 혼란 스럽지만 기본적으로 그것을 뒤집을 방법을 알아야합니다. – JacobTheDev