微軟銀光

微軟銀光

即Microsoft Silverlight,它是一個跨瀏覽器的、跨平台的外掛程式,為網路帶來下一代基於·NET的媒體體驗和豐富的互動式應用程式

簡介

微軟Silverlight是一個跨瀏覽器、跨客戶平台的技術,能夠設計、開發和發布有多媒體體驗與富互動(RIA,Rich Interface Application)的網路互動程式。

它是微軟公司發行的提供類似於Flash功能的外掛程式。
當瀏覽器需要查看使用Silverlight(銀光)技術開發的內容時,會要求安裝這個外掛程式,這個外掛程式下載到本地以後,檔案名稱就是silverlight.exe,它是安全的,可以放心安裝。當然,隨時也可以卸載。

主要功能

基於.NET的媒體體驗和豐富的互動式應用程式。只要安裝了這個外掛程式程式,就可以在Windows和蘋果電腦上的瀏覽器中運行相應版本的Silverlight應用程式,享受視頻分享、線上遊戲、廣告動畫、互動豐富的網路服務等等。

Silverlight包含了Windows Presentation Foundation(WPF)技術,這個技術在創建用戶界面時極大的擴展了瀏覽器元素。WPF可以創建融合圖形、動畫、媒體和其他的富客戶端特性,擴展了基於瀏覽器的用戶界面,超越了HTML所提供的。可擴展應用程式標記語言(XAML)提供了創建WPF元素的聲明性標記。

Silverlight 5 提供了許多新的功能,如提高了對各種媒體的支持例如H.264,更強大的內容保護技術,GPU解碼帶來了更好的UI功能和質量,提高了性能,更平滑的界面,降低了網路延遲等等。

使用方式

構建一個簡單的 Silverlight 應用程式

我們先來看一看 Microsoft Expression Blend,使用該工具創建一個 XAML 格式的非常簡單的應用程式,以供 Silverlight 使用。要在 Blend 中創建 Silverlight 應用程式,請選擇 File(檔案)->New project(新建項目),此時會打開“New Project”(新建項目)對話框。

選擇 OK(確定),即會創建一個新項目。該項目將包含一個默認 HTML 頁面、該頁面的一些 JavaScript原始碼、一篇 XAML 文檔和該 XAML 文檔的 JavaScript 原始碼及 Silverlight.js。

Silverlight.js 包含用於下載和實例化 Silverlight 控制項的代碼。它作為 Silverlight SDK 的一部分提供給用戶。

Default.html 是標準的 HTML 網頁。該網頁包含三個 JavaScript 腳本引用,分別指向 Silverlight.js、Default.html.js(其中包含特定於應用程式的用於安裝 Silverlight 的代碼)和 Scene.xaml.js(其中包含在 XAML 中定義的應用程式事件的事件處理程式)。

它被設計為一個獨立的頁面 (default.html),與實例化邏輯 (default.html.js)、設計 (Scene.xaml) 和事件代碼 (Scene.xaml.js) 分開。不過,理論方面的探討已經夠多了,現在我們開始開發一個簡單的應用程式。

創建供視頻播放器使用的 UI

在項目中添加視頻檔案。為此,請右鍵單擊螢幕右上方 Project Files(項目檔案)視窗中的項目檔案,然後選擇 Add Existing Item...(添加現有項目)。

選擇某個 WMV 檔案並將其添加到項目時,項目瀏覽器中將顯示該檔案,同時在視圖中添加了一個媒體元素。

現在即可運行您的項目,瀏覽器將啟動並播放您的視頻!

通過編輯 XAML 可以停止自動播放視頻。您會看到 XAML 設計器右側有兩個選項卡:Design(設計)和 XAML。選擇“XAML”選項卡,會打開 XAML 編輯器,如圖 3 中所示。使用該編輯器為媒體元素編輯 XAML 文本,添加屬性 AutoPlay=False。

現在,如果您運行該應用程式,會看到 Silverlight 內容雖然呈現了視頻的第一幀,但並不播放。

在視頻播放器中添加控制項

為該應用程式添加兩個文本塊,文本內容分別為 Play 和 Stop,名稱分別為 txtPlay 和 txtStop。接下來,為文本塊在 XAML 中添加事件處理程式聲明。為此,可以使用 MouseLeftButtonDown 屬性聲明單擊滑鼠的處理程式。在 txtPlay 文本塊中,添加對 DoPlay 的事件處理程式;在 txtStop 文本塊中,添加對 DoStop 的事件處理程式。現在,如果用戶單擊其中一個文本塊,將觸發一個事件,您可通過 JavaScript 功能捕獲並處理該事件。

在 JavaScript 中處理事件

模板創建的 Scene.xaml.js 可用於在 JavaScript 中捕獲並處理用戶事件。由於您在 XAML 內指定了 DoPlay 和 DoStop 事件處理程式,因此應在此處付諸實施。

稍後查找媒體元素(在本例中稱為 Movie_wmv)時,將用到上述名稱。在項目中添加電影時,為您創建了此媒體元素,該元素的名稱是根據電影名稱命名的。因此,如果電影的名稱是 Movie.wmv,則此媒體元素就稱為 Movie_wmv。如果使用其他電影,則控制項也會相應地採用其他名稱。

該媒體元素有 Play 和 Stop 兩個方法,分別用於啟動或停止媒體播放。

由於存在對該媒體元素的引用,因而可以調用上述方法,電影將隨之停止或啟動,如圖 4 中所示。

至此,您已構建了自己的第一個 Silverlight 應用程式!

了解 Silverlight 調用

HTML 頁面會調用 Default.html.js 原始碼頁中的 createSilverlight()。

該調用將用到許多屬性,其中包括那些用於定義要呈現的 XAML、Silverlight 控制項外觀以及 onLoad 和 onError 事件處理程式的屬性。

source:屬性用於定義希望 Silverlight 控制項呈現的 XAML。該屬性可以是外部檔案(如本例中所示),也可以是包含 XAML 的頁面上的命名<script> 標記。
在頁面上添加 Silverlight 控制項時,應將該控制項添加到命名 <DIV> 內。應將 parentElement:屬性作為該 <DIV> 的名稱。
控制項的 ID 由 id:屬性指定。
控制項的物理屬性(如高度、寬度和版本)是由載入到 properties:屬性中的數組設定的。

相關詞條

相關搜尋

熱門詞條

聯絡我們