실버라이트 EMBED 태그로 띄우기!!
" 실버라이트 EMBED 태그로 띄우기!! "
별 의미 없는 내용일수도 있다. 하지만 일전의 나의 경험으로 미루어 봤을 때 나에겐 정말 좋은 정보였던 것 같다. 몇 일전 난 내가 만든 실버라이트 애플리케이션을 어떤 사이트에 올리려고 했는데...그 사이트의 보안상의 이유인지 Object태그가 있으면 그 부분을 삭제 또는 Replace 하는 것 이다. 그래서 안되는 가 보다 하고 포기하려는 순간.. 그 몇 일 전에 내가 올릴 유튜브 동영상은 잘 동작하고 있는 것이 생각났다. 그래서 난 플래시인 유튜브 동영상은 잘되는데 왜 실버라이트는 안될까 해서 Debugbar를 이용해서 유투브동영상은 어떻게 되어 있는지 봤다. 그런데 embed태그 아닌가… 그럼 실버라이트도 embed태그를 이용하면 되지 않을까 해서 나의 테스트는 시작 되었다.
ㅁ 테스트 프로젝트 구성
Page.xaml |
<UserControl x:Class="TestProject01.Page" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="400" Height="300"> <Grid x:Name="LayoutRoot" Background="Yellow"> <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" x:Name="TestTextBlock" Text="값이 없음." /> </Grid> </UserControl> |
App.xaml.cs |
private void Application_Startup(object sender, StartupEventArgs e) { Page page = new Page(); string val = e.InitParams["value"]; page.TestTextBlock.Text = val; this.RootVisual = page; } |
위 코드와 같이 아주아주 간단한 실버라이트 프로젝트를 만들어 봤다. (너무 간단한가^^;;;)
그냥 App에서 InitParams로 넘어온 값을 받아서, Page.xaml안에 TextBlock에게 값을 넘겨줘서 뿌려주는 것이다.
ㅁ Object 태그 사용
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" /> <param name="initParams" value="value=Object태그" <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> |
일반적으로 사용되는 거라 따로 설명이 필요 없을 것이다.
ㅁ embed 태그 사용
Embed 태그 사용 |
<embed data="data:application/x-silverlight-2," id="silverlight1" type="application/x-silverlight-2" source="ClientBin/TestProject01.xap" initParams="value=embed태그" width="100%" height="100%" background="white" > </embed> |
Object태그에서는 Param 엘리먼트를 이용해서 값을 지정해 주었는데, Embed태그는 어트리뷰트(Attribute)로 값을 지정해 준다.
이렇게 해서 테스트 끝!!
결론 : Embed태그를 이용할 수도 있구나!!