XAML

위키百科, 우리 모두의 百科事典.

擴張 應用 프로그램 마크업 言語
Extensible Application Markup Language (XAML)
파일 擴張字 .xaml
인터넷 미디어 타입
application/xaml+xml
開發 마이크로소프트
發表日 2008年 6月  ( 2008-06 ) [1]
最新 버전
v2019
(2019年 3月 12日 (5年 前) ( 2019-03-12 ) [2] )
포맷 種類 使用者 인터페이스 마크업 言語
다음으로부터 확장 XML

擴張 應用 프로그램 마크업 言語 (Extensible Application Markup Language), 곧 XAML ([zæ:m?l])로 發音)은 마이크로소프트 社가 構造값과 客體를 初期化하는 데 使用하려고 만든 宣言型 XML 基盤 言語이다. 마이크로소프트사의 Open Specification Promise 를 통해 使用할 수 있다. [3] XAML은 元來 윈도우 프레젠테이션 파운데이션 의 코드 이름이기도 했던 Avalon에서 따와서 "eXtension Avalon Markup Language"를 代表하는 말이었다. [4]

槪要 [ 編輯 ]

XAML은 닷넷 프레임워크 3.0 技術에, 特히 윈도우 프레젠테이션 파운데이션 (WPF), 윈도 워크플로 파운데이션 (WF)에 널리 쓰인다. WPF에서 XAML은 使用者 인터페이스 마크업 言語 로 쓰이면서 使用者 인터페이스의 要素, 데이터 바인딩, 이벤트 等의 機能을 定義한다. 윈도 워크플로 파운데이션에서 워크플로 는 XAML을 使用하여 定義할 수 있다.

XAML 要素는 共通 言語 런타임 客體 인터페이스에 直接 매핑할 수 있지만 XAML은 共通 言語 런타임 屬性과 이벤트를 該當 客體로 매핑하는 데 使用한다. XAML 파일은 마이크로소프트 익스프레션 블렌드 , 마이크로소프트 비주얼 스튜디오 , 호스팅 可能한 윈도 워크플로 파운데이션 비주얼 디자이너와 같은 視角 디자인 道具로 만들고 編輯할 수 있다. 標準 文書 編輯機 , XAMLPad 와 같은 코드 編輯機, Vectropy 와 같은 그래픽 編輯機로 만들어 編輯할 수도 있다.

XAML을 追加하거나 그것으로 만든 어떠한 것이든 C# , 비주얼 베이직 닷넷 과 같은 旣存에 쓰여왔던 닷넷 言語를 使用하여 表現할 수 있다. 그러나 이 技術의 주된 側面은 XML 基盤이기에 XAML을 處理하는 道具에 必要한 複雜性을 줄이는 것이다. [5] 그 結果 다양한 製品이 XAML 基盤의 應用 프로그램을 만들 수 있는(특히 윈도우 프레젠테이션 파운데이션 ) 空間에서 登場하고 있다. XAML은 單純히 XML 基盤이므로 開發者들과 디자이너들은 컴파일을 하지 않아도 두 마크업 言語 사이에서 콘텐츠를 자유로이 共有하고 編輯할 수 있다.

[ 編輯 ]

이 윈도우 프레젠테이션 파운데이션의 例는 캔버스(Canvas)라 불리는 最上位 XAML 컨테이너에 "Hello, world!"를 標示한다.

<Canvas
 xmlns=
"http://schemas.microsoft.com/client/2007"

        xmlns:x=
"http://schemas.microsoft.com/winfx/2006/xaml"
>

  <TextBlock>
Hello,
 world!
</TextBlock>

</Canvas>

스키마(xmlns=" https://web.archive.org/web/20170705010515/http://schemas.microsoft.com/ ..." 部分)는 컴퓨터에서 動作할 수 있게 變更할 必要가 있다. 마이크로소프트가 勸奬하는 스키마를 使用한 例示는 다음과 같을 수도 있다. [6]

<Canvas
 xmlns=
"http://schemas.microsoft.com/winfx/2006/xaml/presentation"
>

  <TextBlock>
Hello,
 world!
</TextBlock>

</Canvas>

이것은 브라우저 內에 호스팅되는 샌드박스 環境에서 實行되는 컴파일된 應用 프로그램인 XBAP 를 使用하여 WPF를 設置하는 境遇 웹 페이지 로 統合할 수 있다. 다른 方法으로는 실버라이트 플러그인 을 使用하는 것이다. 닷넷 3.0 以後가 設置되어 있다면 느슨한(loose) XAML 파일도 실버라이트 플러그인 없이 닷넷 프레임워크 3.0과 結合하여 互換 웹 브라우저 ( 인터넷 익스플로러 파이어폭스 包含) 直接 確認이 可能하다. [7] 코드는 HTML 페이지에 直接 追加할 수 없다. 代身 자바스크립트 를 통해 페이지로 로드되어야 한다. 느슨한 XAML 파일들은 렌더링할 視覺的인 內容을 定義하는 것으로 制限되는 마크업 專用 파일이다. 이들은 應用 프로그램과 컴파일되지 않는다.

<html
 xmlns=
"http://www.w3.org/1999/xhtml"
>

  <head>

    <title>
XAML
 Example
</title>

    <script
 type=
"text/javascript"
 src=
"MySilverlight.js"
 />

    <script
 type=
"text/javascript"
 src=
"Silver.js"
 />

  </head>

  <body>

    <div
 id=
"MySilverlight"
 >

    </div>

    <script
 type=
"text/javascript"
>

      createMySilverlight();
    </script>

  </body>

</html>

MySilverlight.js 파일은 MySilverlight 要素 밑에 上記의 XAML 코드(XML 파일로)를 로드하는 코드를 包含해야 한다.

같이 보기 [ 編輯 ]

各州 [ 編輯 ]

  1. 《[MS-XAML] ? v1.0, Xaml Object Mapping Specification 2006》 (PDF) , Microsoft , June 2006, 2010年 12月 24日에 原本 文書 (PDF) 에서 保存된 文書 , 2010年 6月 24日에 確認함  
  2. “Extensible Application Markup Language (XAML)” . Microsoft . 2019年 3月 12日.  
  3. “Microsoft adds XAML to 'Open Specification' list - SD Times On The Web” . 2008年 12月 11日에 原本 文書 에서 保存된 文書 . 2011年 7月 19日에 確認함 .  
  4. “January 2004 - Posts - Rob Relyea” . 2007年 10月 11日에 原本 文書 에서 保存된 文書 . 2007年 10月 6日에 確認함 .  
  5. XAML Syntax Terminology
  6. Microsoft XAML Overview page at XAML Overview (Root element and xmlns)
  7. Windows Presentation Foundation on the Web: Web Browser Applications - MSDN

外部 링크 [ 編輯 ]