Silverlight Object 태그 알아 보기!!
Silverlight Object 태그 알아 보기!!
실버라이트 애플리케이션을 만들고, HTML페이지 또는 여러 기타(aspx, php,asp 기타…) 페이지들에 실버라이트 애플리케이션을 등록하기 위해서는 보통 Object태그를 많이 사용할 것 이다. 그래서 이 강좌를 통해서 실버라이트에서 사용 할 수 있는 여러 Object Element의 구성들에 대해서 알아 보고, 잊어 버리지 않도록 잘 정리 해 보려고 한다. 이는 실버라이트를 배포하는데 도움이 되지 않을까 생각이 든다.
ㅁ Object Element의 구성
실버라이트 애플리케이션을 올리기 위한 Object는 크게 다음과 같은 구성 요소로 이루어진다.
Element |
attribute |
필수 여부 |
설명 |
object |
필수 |
실버라이트 애플리케이션을 적재하는 HTML 구성 요소 | |
|
data |
필수, 고정 |
반드시 "data:application/x-silverlight-2," 으로 설정해야 함. |
type |
필수, 고정 |
반드시 "application/x-silverlight-2" 으로 설정해야 함. | |
width |
선택 |
일반 HTML과 같은 크기 조정. “640”과 같은 pixel 단위 혹은 “100%”와 같은 비율로 조정 가능. 단, 비율일 경우 반드시 object 엘리먼트의 부모 엘리먼트가 크기를 가지고 있어야 함. | |
height |
선택 | ||
param |
일부 필수 |
실버라이트 애플리케이션에 전달할 파라미터를 표현하는 구성 요소. 반드시 object 엘리먼트의 자식 노드로 구성되어야 함. | |
|
name |
필수 |
전달할 파라미터의 이름 |
value |
필수 |
전달할 파라미터의 값 | |
HTML elements |
선택 |
실버라이트 플러그인이 설치되지 않았거나 실버라이트를 사용할 수 없는 브라우저에 표시할 대체 HTML 구성 요소. 일반적으로 실버라이트 설치를 유도할 수 있는 배너 및 링크가 포함됨. |
ㅁ Object에 필요한 Param
실버라이트 애플리케이션을 올리기 위해서는 Object는 다음과 같은 Param 엘리먼트를 자식 노드로 포함할 수 있다.
l source
실버라이트 애플리케이션 패키지인 XAP파일의 URL를 설정 한다.
l minRuntiomeVersion
해당 실버라이트 애플리케이션의 동작이 가능한 최소한의 플러그인 버전 설정 한다.
<param name=”minRuntimeVersion” value=”2.0.31005.0” />
l autoUpgrade
설치된 실버라이트 플러그인의 버전이 minRuntimeVersion보다 낮을 경우 업그레이드 여부를 묻는 프롬프트를 띄우고 자동으로 최신버전으로 업그레이드 할지 여부 설정 한다.
l splachScreenSource
XAP 파일을 다운로드 받는 동안 보여줄 디자인 표현한 XAML 파일의 URL 를 설정한다.
(단, URL이 상대 경로일 경우 XAP파일의 위치를 기준으로 함)
<param name=”splashScreenSource” value=”Splash.xaml” />
l background
플러그인이 차지하는 영역의 배경 색상 설정 한다.
(#AARRGGBB 형식의 8자리 문자열로 입력.)
l maxFrameRate
실버라이트 런타임이 화면을 1초에 몇 번 렌더링하는지 결정하는 수치 설정 한다.
기본값은 60이며 통상 36이상이면 무난한 품질로 렌더링 된다.
<param name=”maxFrameRate” value=”36” />
l initParams
실버라이트 애플리케이션에 넘겨줄 파라미터를 Key1=value1,Key2=value2 형식으로 설정한다. (주의 – 공백,특수문자를 포함하는 복잡한 문자열은 URL Encode를 하여 전달하는 것이 좋다.)
<param name=”initParams”
value=”Source=http%3a%2f%2ffoo.com%2f %ed%91%b8.wmv” />
l allowHtmlPopupWindow
퍼가기 시나리오에서 타 도메인에 올라간(크로스 도메인) 실버라이트 애플리케이션이 HTML의 팝업 윈도를 사용할 수 있는지 여부를 설정한다.
l enableFramerateCounter
디버깅용 프레임 레이트 측정을 허용할지 여부를 설정한다.
l enableHtmlAccess
크로스 도메인에서 동작하는 실버라이트 애플리케이션 코드가 HTML DOM에 접근하는 것을 허용할지 여부를 설정한다.
l onError
실버라이트 애플리케이션에서 핸들링 되지 않은 예외 에러가 발생했을 때 호출할 자바스크립트 함수의 이름을 설정한다.
l onFullScreenChanged
실버라이트 애플리케이션이 전체화면으로 되거나 보통 화면으로 돌아왔을 때 호출할 자바스크립트 함수의 이름을 설정한다.
l onLoad
실버라이트 애플리케이션이 로드를 완료했을 때 호출할 자바스크립트 함수의 이름을 설정한다.
l onResize
실버라이트 애플리케이션을 포함하는 plug-in의 크기가 변했을 때 호출할 자바스크립트 함수의 이름을 설정한다.
l onSourceDownloadCompleted
source에 설정한 XAP 파일의 다운로드가 완료되었을 때 호출할 자바스크립트 함수의 이름을 설정한다.
l onSourceDownloadProgress
source에 설정한 XAP 파일의 다운로드 진행율이 변경되었을 때 호출할 자바스크립트 함수의 이름을 설정합니다.
l windowless
실버라이트 플러그인을 렌더링할 때 윈도를 사용하지 않을지 여부를 설정합니다. Windowless 모드는 기본값이 false이며, 특별한 경우가 아니면 사용하지 않습니다.
Object 태그 <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> <param name="source" value="ClientBin/TestProject01.xap"/> <param name="onerror" value="onSilverlightError" /> <param name="background" value="white" /> <param name="minRuntimeVersion" value="2.0.31005.0" /> <param name="autoUpgrade" value="true" /> <a href="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;"> <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none"/> </a> </object>
( 위 코드는 기본 생성 코드입니다.)
위 코드와 필요에 따라 위에서 알아봤던 엘리먼트를 추가하면 되는 것이다.