Microsoft Silverlight

Microsoft Silverlight是微軟已停止支援的Web前端應用程式開發解決方案，曾是微軟豐富型網際網路應用程式（Rich Internet Application）策略的主要應用程式開發平台之一，以瀏覽器的外掛元件方式提供Web應用程式中多媒體（含影音串流與音效串流）與高度互動性前端應用程式的解決方案。它曾是微軟UX（用户体验）策略中的一環，也是微軟試圖將美術設計和程式開發人員的工作明確切分與協同合作發展應用程式的嘗試之一（另一個為WPF）。

目前Silverlight已經逐步停止被各主流瀏覽器支援，包含Internet Explorer、Firefox、Opera與Safari等，同時也包括macOS作業系統。與Silverlight相同的開放原始碼解決方案「Mono」則提供在Linux上的支援。

Microsoft Silverlight被視為與Adobe Flash Player和Unity競爭的WEB技術。

台湾微软为推广Silverlight技术而推出拟人化形象蓝泽光。

由於Silverlight安全性和效能不甚理想，微軟在2013年已明確不再開發新功能，僅修補漏洞，而在2021年10月12日終止其支援。

 特色 
Silverlight是微軟前端使用者介面技術Windows Presentation Foundation（WPF）的一個子集，同時也是XAML（eXtensible Application Markup Language）的子集，具有向量式的繪圖能力，以及多媒體與圖形顯示的支援，開發人員能夠使用宣告式開發（declarating development）來發展Silverlight應用程式，而宣告式開發的特性也讓它能夠和設計工具來整合，因此微軟特別為Silverlight和WPF發展了工具供設計人員使用。

Silverlight支援串流媒體能力，特別是針對Windows Media的Streamming Media支援，以及MP3等音效串流支援，讓企業得以使用Silverlight發展出多媒體型應用程式，在圖像支援方面，Silverlight 2.0的Deep Zoom技術可以讓大型的圖片或影像得以利用分段下載的瀏覽方式來顯示在前端，台灣國立故宮博物院在2008年曾開發出以Deep Zoom技術的清明上河圖Silverlight版本。

在Windows平台上，Silverlight的底層是透過XNA Framework來處理繪圖。一種將DirectX Graphics封裝成.Net Framework的版本的類別庫。

 版本 
 Silverlight 1.0 

Silverlight 1.0由許多核心展示層架構組成，這關係到使用者界面（UI），使用者輸入（user input），基本使用者介面控制元件（basic UI controls），圖形（graphics）和動畫（animation）、媒體播放（media playback），數位權管理（DRM）的支援，以及DOM的整合。其組件如下：
輸入（Input）：處理諸如鍵盤、滑鼠、手寫筆等輸入裝置的輸入。
使用者介面核心（UI core）：管理點陣圖像渲染（包括JPEG之類的压缩图像）、向量圖形、文字及動畫。
媒體（Media）：MP3的回放、Windows Media及VC-1串流。
 XAML：允許使用XAML創建UI布局。

一個銀光程式（Silverlight）的起點是從網頁呼叫銀光元件（Silverlight control）開始，必須載入XAML檔。The XAML file包含一個Canvas物件，扮演著一個placeholder的角色。Silverlight提供各種不同的幾何基元，像是：線、橢圓以及其它形狀

一個典型的Silverlight 1.0程式的HTML hosting如下：

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<title>UntitledProject1</title>
	<script type="text/javascript" src="Silverlight.js"></script>
	<script type="text/javascript" src="Page.xaml.js"></script>
	<style type="text/css">
		.silverlightHost {
			height: 480px;
			width: 640px;
		}
	</style>
	<script type="text/javascript">
	    function createSilverlight()
        {
            var scene = new UntitledProject1.Page();
            Silverlight.createObjectEx({
	            source: "Page.xaml",
	            parentElement: document.getElementById("SilverlightControlHost"),
	            id: "SilverlightControl",
	            properties: {
		            width: "100%",
		            height: "100%",
		            version: "1.0"
	            },
	            events: {
		            onLoad: Silverlight.createDelegate(scene, scene.handleLoad)
	            }
            });
        }

        if (!window.Silverlight)
            window.Silverlight = {};

        Silverlight.createDelegate = function(instance, method) {
            return function() {
	            return method.apply(instance, arguments);
            }
        }
	</script>
</head>

<body>
	<div id="SilverlightControlHost" class="silverlightHost">
		<script type="text/javascript">
			createSilverlight();
		</script>
	</div>
</body>
</html>

 Silverlight 2 

2008年10月13日，微軟推出了Silverlight 2.0的RTW版，并提供了相应程式及文件的下载安装。

Silverlight 2.0支援下列新功能特色，彌補了Silverlight 1.0所欠缺的功能：

具備一個.NET Framework縮小版的基礎類別函式庫。
大量內建的Silverlight控制項：在Silverlight 1.0時，所有UI物件都必須透過XAML來自行描述繪製，並缺乏許多內建的Silverlight向量控制項，針對這點，Silverlight 2.0強化控制項方面的能力，內建許多向量控制項供開發人員直接使用。
 Skinning and Templating外觀樣板的進階支援：透過Skinning and Templating的支援，可以自訂控制項之外觀與樣板，可以迅速及動態地套用不同的外觀。
 Deep Zoom：一個高解析度的影像縮放技術，能夠在Silverlight進行深度的圖片影像縮放功能。
廣泛的網路Networking支援能力：舉例來說支援REST、SOAP、POX、RSS及標準HTTP服務等網路技術的呼叫，這部分對前端的Silverlight特別重要，透過網路程式才能存取後端Server的資料，以回傳繫結顯示在UI之上。
擴展的.NET語言支援：Silverlight 2.0不僅僅支援主流的C#及VB程式開發，亦進一步支援動態語言，例如IronPython、IronRuby等等。
 Silverlight DRM的支援：Silverlight 2.0對於影音媒體內容的保護，是透過DRM技術來逹成，透過它就可以提供Content內容保護。
改善伺服端的延展性及擴展廣告客戶支援：Silverligt 2.0針對串流傳送資料方式、效率、下載播放方式再進一步強化改善其能力。
活躍的的合作夥伴生態系統：微軟全球知名的Visual Studio Industry Partners合作伙伴包括了ComponentOne LLC、Infragistics Inc及Telerik，提供了Silverlight 2.0的商業元件，可在Visual Studio 2008的環境中使用。
跨平台及跨瀏覽器支援：支援Mac、Windows及Linux等平台和Firefox、Safari與Windows Internet Explorer等瀏覽器。

 Silverlight 3 
2009年7月10日，微软正式放出Silverlight 3 RTW（3.0.40624.0）的下载，改进包括：

平滑视频流技术：微软表示其新视频流功能提高了浏览器上的视频质量，已经可以和电视视频相比。Silverlight 3的平滑视频功能已经在流行音乐天王迈克。杰克逊的悼念晚会、温布尔登网球公开赛网络直播上大显身手。
数字版权管理：Silverlight 3在数字内容保护上做了提高。内容生产商从发布内容之始就可以跟踪并保护其发布的内容。
现场感：Silverlight 3支持更强大的3D显示功能，新增加的一些功能可以用于图片的深度缩放，现场感更强。
可在浏览器之外运行：在2007年刚推出Silverlight的时候，使用Silverlight必须基于浏览器。在Silverlight 3中已经没有这种限制，用Silverlight 3开发的应用可以直接运行。
升级的Expression Studio 3：Expression Studio是微软提供给开发者开发Silverlight应用的工具套件。新发布的Silverlight 3升级了Expression Studio，提供了新工具Sketchflow。
增强对企业用户的支持。

 Silverlight 4 
支援Google Chrome浏览器
支援網路攝像頭和麥克風
支援列印功能
強化滑鼠的右鍵與滾輪功能
 WCF RIA Services：WCF RIA Service Preview，內建於Visual Studio 2010的開發環境。
執行效能較Silverlight 3快200%
與HTML整合
支持脱离浏览器功能
data binding再加強
動畫效果再加強
剪貼簿（Clipboard）與拖曳功能
視界放大（Deep Zoom）
H.264的內容保護

 Silverlight 5 
2010年12月2日有Silverlight更新的傳聞，Silverlight 5 beta英文版於2011年4月13日釋出，而正式版本于2011年12月9日公布。

Silverlight 5的新功能有：

 支援GPU加速影像壓縮
 內建3D graphics 
 改善電源管理 
 內建遠端控制
 更快的程式啟動（application startup）
 提供64位元的瀏覽器
 加強Visual Studio 2010的使用者界面自動化測試
 文字檢錯系統
 可以讓開發人員在data-binding時設定偵錯中斷點

 開發工具 
Silverlight的開發工具分為兩個部份：

設計人員：使用Microsoft Expression Blend來進行設計。
 Expression Blend 2.0支援Silverlight 1.0的設計。
 Expression Blend 2.0 Service Pack 1支援Silverlight 2.0的設計。
開發人員：使用Microsoft Visual Studio來開發。
 Visual Studio 2008支援Silverlight 1.0的應用程式開發。
 Silverlight Tools for Visual Studio 2008（外掛於Visual Studio 2008 SP1）支援Silverlight 2.0的應用程式開發。

Eclipse也有支援Silverlight開發的計畫。

 版本歷史 

版本號碼版本名稱發佈日期1.0 CTP1.0.?2006年12月1.0 RTW1.0.208162007年9月5日2.0 Pre-Release1.1.20926.02007年9月5日1.0 service release1.0.21115.02007年11月20日1.0 service release1.0.30109.02008年1月15日2 Beta 12.0.30226.22008年3月5日1.0 service release1.0.30401.02008年4月8日2 Beta 2  2.0.30523.6  2008年6月6日 2.0.30523.8  2008年7月16日 1.0 service release 1.0.30715.02008年7月27日 2.0 RC0  2.0.30523.9  2008年9月25日2 RTW  2.0.31005.0  2008年10月14日 2 GDR 1  2.0.40115.0  2009年2月19日 3 Beta  3.0.40307.0  2009年3月18日 3.0 RTW  3.0.40624.0  2009年7月10日 3 GDR 1  3.0.40723.0  2009年7月28日 3 GDR 2  3.0.40818.0  2009年9月1日 4 Beta 1  4.0.41108.0  2009年11月18日 3 GDR 3  3.0.50106.0  2010年1月20日 4 RC  4.0.50303.0  2010年3月15日 4 RTW 4.0.50401.0  2010年4月15日 4 GDR 0 4.0.50524.0  2010年6月3日 3 Security Update 3.0.50611.0  2010年8月10日 4 GDR 1 4.0.50826.0  2010年9月1日 4 GDR 2  4.0.50917.0  2010年9月28日 4 GDR 3 4.0.60129.0  2011年2月14日 4 GDR 4 4.0.60310.0  2011年4月19日 4 GDR 5 4.0.60531.0  2011年6月14日 4 GDR 6 4.0.60831.0  2011年10月11日 5 Beta  5.0.60401.0  2011年4月13日 5 RC  5.0.60818.0  2011年9月1日 5  5.0.61118.0   2011年12月9日 4安全性更新  4.1.10111.0  2012年2月14日 4安全性更新  4.1.10329.0  2012年5月8日 5安全性更新  5.1.10411.0   2012年5月8日 5安全性更新  5.1.20125.0  2013年3月12日 5安全性更新  5.1.20513.0  2013年7月9日 5安全性更新  5.1.20913.0  2013年10月8日 5更新  5.1.30214.0  2014年5月11日 5更新  5.1.30514.0  2014年7月23日 5更新  5.1.31211.0  2014年12月13日 5更新  5.1.40416.0  2015年5月12日 5更新  5.1.40728.0  2015年8月11日 5更新  5.1.41105.0  2015年12月8日 5安全性更新  5.1.41212.0  2016年1月12日 5更新  5.1.50428.0  2016年6月21日 5更新  5.1.50709.0  2016年9月13日 5更新  5.1.50901.0  2016年10月11日 5更新  5.1.50905.0  2017年3月14日 5更新  5.1.50906.0  2017年4月11日 5更新  5.1.50907.0  2017年6月13日

 藍澤光 

藍澤光是由臺灣微軟分公司推出的Microsoft Silverlight萌擬人化代言人，在臺灣及日本地區影響較大。隨著微軟對於Silverlight 5的產品支援已經逐步結束，官方活動小組已經於2014年9月宣布，使藍澤光轉型成為Microsoft Azure的台灣區虛擬化代言人。

 瀏覽器相容性 
下表為各作業系統及各大網頁瀏覽器對於Silverlight各版本的支援性
系統/瀏覽器IE 6 SP1IE 6 SP2以上IE 7IE 8以上Mozilla Firefox 3以上SeaMonkeySafariOperaGoogle ChromeEdge Windows 7以上                  Windows Server 2008 R2                  Windows Vista                  Windows Server 2008                 Windows XP / 2003 / Home Server                Windows 2000（需安裝KB891861  ）                Windows Phone 7                S60                FreeBSD                Linux                Mac OS 10.4/10.5 PowerPC                Mac OS 10.4/10.5 Intel                

 參考資料 

 外部連結 

 Silverlight終止支援的說明與常見問題 
 Microsoft Silverlight Release History 
 MSDN Silverlight Dev Center
 The Official Microsoft Silverlight Site
 CNET - More than meets the eye in Microsoft plan
 Silverlight 1.1 is Now Silverlight 2.0 （2007/11/29）
 Silverlight - ProgWiki 
 ScottGu's Blog 
 Comparison between Silverlight, Flash and HTML5 

Category:微軟API
Category:Windows多媒体
Category:AJAX
Category:2007年软件
Category:已停止开发的微软软件