2010-12-01 4 views
7

Silverlight 응용 프로그램에 HTML을 표시해야하며이를 수행 할 방법을 찾을 수 없습니다. 브라우저에서 또는 브라우저에서 실행할 수 있어야하므로 웹 브라우저 컨트롤을 사용할 수 없습니다.Silverlight 응용 프로그램에 HTML 표시

누구든지이 작업을 수행하는 좋은 방법을 알고 있습니다. 내가 수행하고 있다고 생각할 수있는 것은 C#에 해당하는 태그 (예 : \n)로 태그를 바꾸기 위해 텍스트의 메서드를 바꿉니다.

+0

브라우저에서이 기능을 실행할 수 있어야하는 이유가 무엇인가에 상승 된 권한을 사용해야한다는 것입니다. 그 맞습니까? –

답변

0

나는 당신이 찾고있는 것이 HTML Bridge이라고 믿습니다.

편집이 OOB를 실행하는 경우 자바 스크립트에 액세스 할 수 있는지 확실하지 않습니다. 이 부분을 좀 더 살펴보고 추가로 업데이트 할 예정입니다. 나는 아직도 대답을 참고 용으로 남겨 둘 것이다.

두 번째 편집 다음은 내가 찾은 것입니다. HTML 브릿지는 브라우저에서 실버 라이트를 실행할 때 비활성화됩니다. 이렇게하면 Javascript뿐만 아니라 HTML DOM에 대한 액세스가 비활성화됩니다. 그러나 this site에 대한 의견에 따르면

OOB 앱을 처음 설치할 때 HTML 브리지를 사용할 수 없습니다. 그러나 응용 프로그램이 설치된 폴더에서 index.html을 수정하는 경우 enablehtmlaccess 매개 변수를 추가하기 만하면됩니다.

작동합니다!

HtmlPage 클래스의 잘 알려진 방법을 사용하여 동적 HTML 요소를 만들 수도 있습니다. Navigate() 메소드와 "_blank"매개 변수를 사용하여 새 브라우저 창을 열 수도 있습니다.

이 정보는 SL 3에 게시되었습니다.이 변경 사항이 변경되었을 수도 있지만 의심 스럽습니다. 따라서 앱에서 브라우저가 작동하지 않는지 여부를 감지하는 SL 앱을 시작할 때 스크립트를 작성하는 것이 좋습니다. 그런 다음이 파일을 수정할 수있는 호출 할 스크립트가 필요할 수 있습니다.

1

내가하는 방법은 응용 프로그램이 브라우저 내부에서 실행 중인지 확인하고 이에 따라 표시 방법을 변경하는 것입니다. 브라우저 내부에서 실행중인 경우이 기사에서 설명하는대로 IFrame으로 애플리케이션을 오버레이합니다 (http://www.silverlightshow.net/items/Building-a-Silverlight-Line-Of-Business-Application-Part-6.aspx). 그렇지 않으면 WebBrowser 컨트롤을 사용합니다. 나는 내 책과 함께 제공되는 소스 코드에서이 모든 것을 수행하는 컨트롤을 가지고있다.이 책은 Apress 웹 사이트 (http://www.apress.com/book/downloadfile/4638)에서 다운로드 할 수있다. 이 도움이

희망 ...

크리스가

+0

+1은이 사실을 인식하지 못했습니다. 아주 청초하다. –

0

최근 similar question이었다.

Silverlight에서 HTML 인라인을 구문 분석하고 표시하는 구현에 링크를 게시했습니다. 물론 간단한 HTML에서만 작동하지만 어쩌면 원하는대로 확장 할 수도 있습니다.

관련 문제