1

실버 라이트 어플리케이션이있어서 브라우저의 닫기 이벤트를 캡처하고 싶습니다. 이 기능을 트리거하면 그래서 내가 무슨 짓을했는지 내에서 .aspx 페이지에이 코드를Silverlight 4 : OnBeforeUnload

function closeIt() { 
     return "Any string value here forces a dialog box to \n" + 
    "appear before closing the window."; 
    } 


    window.onbeforeunload = closeIt; 

을하는 popupwindow는 확인이 개 버튼이 CANCEL (취소)가 나타납니다.

실버 라이트 또는 서버 측에서 사용자가 클릭하는 것의 가치를 얻는 방법이 있습니까?

고맙습니다.

+0

내 이전 질문에 대한 동일한 해결책 http://stackoverflow.com/questions/3456591/silverlight-4-f5-refresh – xscape

답변

0

왜 MessageBox를 사용하지 않습니까?

MessageBoxResult result = MessageBox.Show("Text","Title",MessageBoxButton.OKCancel); 
if (MessageBoxResult.OK==result) 
{ 

} 
else if (result == MessageBoxResult.No) 
{ 

} 

이 당신에게 OK있는 팝업 창을 얻을 수없고 사용자가 확인을 클릭 여부를 결정하는 아주 쉬운 방법으로 창을 취소합니다 : 여기에 코드 예제입니다.

+0

브라우저의 닫기 이벤트를 캡처하는 것이 목적이었습니다. – xscape

1

나는 완전히 당신의 질문을 이해하고 있는지, 당신이 자바 스크립트를 작성하는 것 같습니다. 그러나 당신의 주제는 은빛입니다.

var result = window.Confirm("Really...?"); 

당신이 저장할 수있는 서버에 값을 얻을 수 있습니다 :

bool result = System.Windows.Browser.HtmlPage.Window.Confirm("Really..?"); 

또는 바로 자바 스크립트 : 어쨌든 ....

가장 간단한 방법 중 하나 실버에서 확인 HTML을 활용하는 것입니다 숨겨진 텍스트 필드의 값을 가져 와서 서버에 게시하십시오.

0

답변은 이전 질문에 대한 다른 대답과 거의 같습니다. 닫습니다.

사용자가 취소를 선택하면 아무 일도 일어나지 않습니다. 그들이 OK를 선택하면 Application_Exit이 실행됩니다.

+0

감사합니다.하지만 취소 이벤트를 캡처하고 싶습니다. – xscape