2011-01-03 5 views
0

실버 라이트를 사용하여 일련의 링크를 표시하는 사이드 바 가제트를 작성했습니다. 웹 사이트에서 실버 라이트를 호스팅 할 수 있으며 링크를 클릭하면 새 탭에서 열립니다. 그러나 가제트로 패키지를 만들면 가제트에 링크가 표시되고 클릭 할 수 있지만 브라우저 창을 열어 링크를 표시하지는 않습니다.브라우저에서 링크를 열 수있는 Silverlight 기반 가젯?

이 기능을 사용하려면 어떻게해야합니까?

답변

2

기본 쉘 실행 메소드를 사용하여 가젯에서 외부 링크를 시작하는 것이 가장 좋습니다. 그렇게하면 기본 브라우저에서 실행됩니다.

function launchLink() { 
    if (this.href.slice(0,7) == "http://") { 
     System.Shell.execute(this.href); 
     return false; 
    } 
} 

이론적으로, 당신은 약간이를 수정하고 HTML 브리지를 사용하여 실버 코드에서 호출 할 수 : 가젯을 개발할 때, 내 모든 링크는 다음과 같은 방법을 가리키는 온 클릭 핸들러를 가지고있다.

JS 코드

function launchLink(href) { 
    System.Shell.execute(href); 
} 

실버

// HtmlPage requires using System.Windows.Browser 
HtmlPage.Window.Invoke("launchLink", "http://some.com/"); 
+0

감사 앤디 E. 내가'HtmlPage.RegisterScriptableObject ("페이지"이)가 필요하지 않았다 밝혀; 'bit (자바 스크립트에서 관리 객체를 볼 수있게 만든다.) 자바 스크립트 메소드를 호출하여 쉘을 실행할 필요가있다. –

+0

@Sam : 나도 그렇게 생각했지만 너무 확신하지 못했습니다. 내 Silverlight 지식은 그것이 될 수있는 것이 아닙니다 :-) –

관련 문제