2011年10月4日 星期二

Silverlight 4 新增功能

Silverlight 4 的新功能

RichTextBox 控制項
您可以利用 RichTextBox 控制項顯示、輸入及編輯 RTF 文字。您可以將字元或段落格式套用至文字、顯示超連結以及加入內嵌影像。如需詳細資訊,請參閱 RichTextBox 概觀。
Viewbox 控制項
Viewbox 控制項是內容 Decorator,可以接受一個子項目並加以延展或縮放來符合 Viewbox 的大小。如需詳細資訊,請參閱 Viewbox。
WebBrowser 控制項
WebBrowser 控制項會在應用程式執行於瀏覽器外部時,提供顯示 HTML 內容所需的介面。如需詳細資訊,請參閱 WebBrowser。
WebBrowserBrush 控制項
您可以使用 WebBrowserBrush 控制項從 WebBrowser 控制項中顯示 HTML 內容。例如,您可使用 WebBrowserBrush 來繪製圖案的 Fill,像是 Rectangle 或 Path 的幾何內容。如需詳細資訊,請參閱 WebBrowserBrush。
http://i.msdn.microsoft.com/Hash/030c41d9079671d09a62d8e2c1db6973.gif
瀏覽器外用支援
瀏覽器外用應用程式現在支援幾項瀏覽器裝載應用程式無法使用的功能,包括下列各項:
·         Window 功能,包括執行階段調整大小、最上層顯示功能,以及您可以取消的 Closing 事件。
·         支援離線數位版權管理 (DRM)。
·         搭配 WebBrowser 控制項的 HTML 裝載。
·         搭配 NotificationWindow 類別的快顯警示。
·         支援更高的信任。
·         改善對瀏覽器外用應用程式偵錯的支援。
如需詳細資訊,請參閱瀏覽器外用支援。下列各節也會說明其中一些功能。
信任的應用程式
您可以設定瀏覽器外用應用程式以要求更高的信任。信任的應用程式可以略過 Silverlight 安全性沙箱的部分限制,並與原生功能整合。例如,以更高信任執行的瀏覽器外用應用程式可以讀取和寫入使用者資料夾中的檔案,並且在沒有鍵盤限制的情況下使用全螢幕模式。
此外,信任的應用程式可以存取啟用瀏覽器外用應用程式視窗完整自訂的 Window API。例如,信任的應用程式可以隱藏視窗標題列和框線,並提供用於移動、調整大小或關閉視窗的自訂使用者介面項目。
信任的應用程式會在安裝之前向使用者顯示安全性警告。不過,Silverlight 會對信任的應用程式支援應用程式簽章,並對含有已驗證簽章的應用程式顯示更可靠的警告。
如需詳細資訊,請參閱 信任的應用程式 和 System.IO。
晚期繫結的比較
Silverlight 現在同時在 Visual Basic 和 C# 中支援晚期繫結。Visual Basic 預設會對 Object 型別的變數支援晚期繫結。C# 會對 dynamic 型別的變數支援晚期繫結。這可讓您更容易搭配使用擷取自 HTML DOM 或 Automation API 的物件。
為了支援 HTML DOM 項目的晚期繫結,ScriptObject 類別現在會實作 IDynamicMetaObjectProvider 介面。為了支援 Automation API,已經將 AutomationFactory 類別及相關的類別加入 Silverlight 架構中。
如需 Automation 的詳細資訊,請參閱 HOW TO:在信任的應用程式中使用自動化。


網路攝影機和麥克風
您現在可以從使用者的音訊裝置或視訊裝置擷取來源輸入。CaptureImageAsync 方法會啟用簡單的螢幕擷取情節,而 VideoBrush.SetSource 方法則啟用簡單的視訊播放情節。更進階的情節可以存取原始音訊或視訊,並處理成各種檔案格式。網路攝影機和麥克風擷取都會使用接收器比喻來建立接聽程式類別,而且在取得擷取時,必須有用戶端使用者權限才能存取擷取裝置。如需詳細資訊,請參閱 CaptureSource、AudioSink、VideoSink 和網路攝影機和裝置概觀。
離線使用的 DRM
有許多新功能已整合到可用來實作離線情節的 Silverlight DRM 中 (包括購買、下載、租賃和訂閱)。如需詳細資訊,請參閱數位版權管理 (DRM)。
多重轉換
您現在可以使用 CompositeTransform 類別將多重轉換套用至相同物件,例如傾斜和旋轉。這個類別會依慣用順序套用多重轉換,通常比使用 TransformGroup 類別還要更適合用來將多重轉換套用至物件。
多點傳送
System.Net.Sockets 命名空間已加入對 UDP 多點傳送用戶端的支援。這項支援讓網路用戶端可以利用多點傳送,更有效率地使用網路資源。如需詳細資訊,請參閱使用多點傳送主題與 System.Net.Sockets.UdpAnySourceMulticastClient及 System.Net.Sockets.UdpSingleSourceMulticastClient 類別。
使用 HTTP 擷取通訊端安全性原則
對於使用 System.Net.Sockets 的連線要求,應用程式可以選擇在 TCP 連接埠 80 上使用 HTTP 通訊協定擷取通訊端原則檔,而不是在連接埠 943 上使用自訂的 TCP 通訊協定。這可讓已經在執行 HTTP 服務的 HTTP 伺服器授權來自 Silverlight 應用程式的通訊端連線,而不需要在伺服器上部署新的 TCP 伺服器服務以及針對連接埠 943 開啟通過防火牆的連接埠。此通訊端原則檔是將已解析 IP 位址當做主機 (通訊端連線的目標) 使用,透過 HTTP 所擷取。這會針對電腦資源所需的目標 (例如通訊端) 產生授權式全電腦原則。相較之下,供 System.Net 命名空間中之 WebClient 和 HTTP 類別使用的原則檔則擷取自 HTTP 要求設為目標的主機網域。HTTP 通訊協定允許透過主機標頭,針對每個網域隔離資源。 如需詳細資訊,請參閱 Silverlight 中的網路安全性存取限制。
對信任的應用程式採取寬鬆的安全性原則
System.Net.Sockets 命名空間包含對使用 System.Net.Sockets 進行通訊之瀏覽器外用信任應用程式套用寬鬆安全性原則限制的支援。如需詳細資訊,請參閱 Silverlight 中的網路安全性存取限制 和 信任的應用程式。
用戶端 HTTP 處理
當您選擇透過用戶端 HTTP 處理進行網路呼叫時,就已經取得多項新增的功能:
·         在所有要求上傳送 Referer 標頭
·         基本驗證和 NTLM 驗證支援
·         快取支援
·         能夠啟用或停用對讀取和寫入要求的資料流緩衝
·         同時連線限制從 2 條提高到 6 條連線
如需選擇加入用戶端 HTTP 處理的詳細資訊,請參閱 HOW TO:指定瀏覽器或用戶端 HTTP 處理。
http://i.msdn.microsoft.com/Hash/030c41d9079671d09a62d8e2c1db6973.gif

您現在可以使用 PrintDocument 類別,列印 Silverlight 應用程式的使用者介面。PrintDocument 可讓您向使用者顯示列印對話方塊,並列印應用程式或應用程式中包含的 UIElement。如需詳細資訊,請參閱列印。
http://i.msdn.microsoft.com/Hash/030c41d9079671d09a62d8e2c1db6973.gif

拖放功能
Silverlight 4 引入支援拖放功能的 API。您可以從 Silverlight 內容區域外面的應用程式選取檔案清單,例如從 Microsoft Windows 的 [我的文件] 選取。您可以接著將選取的檔案清單拖放至 Silverlight 內容區域,並處理特定目標項目上的置放事件,然後使用 FileInfo 資訊 (其中包含透過資料流對檔案內容的存取) 處理檔案清單。啟用這項功能的方式是將 Drop 事件和相關事件以及屬性加入至基底 UIElement 類別。支援類別 (例如 DragEventArgs) 也包含在內。
剪貼簿存取
Silverlight 4 引入支援剪貼簿物件存取的 API。您可以對共用的 Clipboard 物件進行 Unicode 文字資訊的取得或設定作業。請注意,這樣的存取需要選擇使用者權限,而且只限於 Unicode 文字資料。還有其他限制,如 Clipboard 參考主題中所述。
按右鍵滑鼠事件
Silverlight 4 已將 MouseRightButtonDown 和 MouseRightButtonUp 事件加入基底 UIElement 類別。應用程式現在可以處理按右鍵滑鼠事件並變更行為。根據預設,當使用者以滑鼠右鍵按一下 Silverlight 應用程式時,就會開啟 Silverlight 組態對話方塊。
命令
在 Silverlight 4 中,ButtonBase 和 Hyperlink 支援 Command 和 CommandParameter 屬性。Command 屬性可透過 {Binding} 用法,參考來自檢視模型資料來源的 ICommand 實作。 然後,Silverlight 輸入系統就會在執行階段中解譯此命令。如需詳細資訊,請參閱 ButtonBase.Command或 Hyperlink.Command。
隱含樣式
您現在可以隱含設定 Style。隱含樣式允許您將特定樣式套用至特定型別的所有項目。如需詳細資訊,請參閱 Style或 透過建立 ControlTemplate 建立新的控制項。
由右至左流向
您現在可以將每個控制項的內容和配置的方向設定為由右至左流動。這樣您就可以使用各國的語言 (例如希伯來文和阿拉伯文) 來開發 Silverlight 應用程式。您可以使用 FlowDirection 屬性來設定流向。如需詳細資訊,請參閱FlowDirection。
全螢幕支援
Silverlight 現在允許應用程式在其他應用程式取得使用中狀態時保留全螢幕模式。如需詳細資訊,請參閱 FullScreenOptions 屬性。
基底項目 API 變更
除了上述功能之外,在 DependencyObject, UIElement 和 FrameworkElement 中還有下列變更可能對 UI 情節有意義:
·         FrameworkElement.Cursor 屬性現在可以透過屬性系統 API 加以設定。
·         FrameworkElement 具有 Unloaded 事件。
·         在 UIElement 層級支援輸入法的文字事件,這樣您就可以善加運用路由功能。
·         SetValue 呼叫與 WPF 對等行為更加一致,特別是在執行動畫時。
http://i.msdn.microsoft.com/Hash/030c41d9079671d09a62d8e2c1db6973.gif

Silverlight 4 引入新的 XAML 剖析器做為 Silverlight 執行階段的一部分。 Silverlight 中的新 XAML 剖析器會提供下列功能:
·         與原本針對 WPF 所撰寫的 XAML 更相容。
·         與 [MS-XAML] 規格中定義的 XAML 語言更相容。
·         可讓工具及其他 XAML 消費者藉由較可預測的方式整合 Silverlight XAML 設計階段經驗。
為了針對 Silverlight 3 應用程式提供最佳相容性,Silverlight 4 執行階段會包含來自 Silverlight 3 的 XAML 剖析器。Silverlight 3 XAML 剖析器是用來載入特別以 Silverlight 3 為目標之應用程式的任何 XAML。 新的剖析器會載入以 Silverlight 4 為目標之應用程式的 XAML。這兩個剖析器會同時並存。
如需 Silverlight 3 與 Silverlight 4 XAML 剖析之間 XAML 行為差異的詳細資訊,請參閱 Silverlight 3 和 Silverlight 4 之間的 XAML 處理差異。
Silverlight XAML 與 WPF XAML 之間具有一些差異。如需詳細資訊,請參閱 Silverlight 各版本和 WPF 之間的 XAML 處理差異。

資料繫結
Silverlight 資料繫結現在支援下列功能:
·         繫結至 DependencyObject 執行個體。
·         繫結至 String 索引子。
·         可以透過 StringFormat 屬性指定 String 格式化選項。
·         可以透過 FallbackValue 和 TargetNullValue 屬性指定預設顯示值。
·         可以透過 CollectionViewSource 類別的 GroupDescriptions 屬性群組集合項目。
·         支援 ICollectionViewFactory 介面,這個介面可讓自訂資料實體集合提供自訂 ICollectionView 實作給 CollectionViewSource 和 DataGrid 類別。
·         支援複雜的繫結物件多屬性驗證,這些物件會實作 INotifyDataErrorInfo 或 IDataErrorInfo 介面。這包括繫結引擎或使用者介面控制項 (例如 DataGrid) 對這些介面的支援。
如需詳細資訊,請參閱資料繫結。
新的 DataServiceCollection<T> 類別會為 WCF 資料服務傳回的資料提供簡化的繫結。這個類別繼承 ObservableCollection<T> 類別,當繫結控制項中的資料有所變更時,就會自動更新繫結資料。如需詳細資訊,請參閱 HOW TO:將資料服務資料繫結至控制項 (WCF 資料服務/Silverlight)。
WCF Data Services - WCF 資料服務
在 Silverlight 的這個發行版本中,已將下列功能加入 WCF 資料服務用戶端:
·         新的 DataServiceCollection<T> 類別會為 Silverlight 控制項提供簡化的資料服務資料繫結。這個類別繼承 ObservableCollection<T> 類別,當繫結控制項中的資料有所變更時,就會自動更新繫結資料。如需詳細資訊,請參閱HOW TO:將資料服務資料繫結至控制項 (WCF 資料服務/Silverlight)。
·         Silverlight 的 WCF 資料服務用戶端現在同時支援瀏覽器外用和跨網域執行。如需詳細資訊,請參閱 WCF 資料服務 (Silverlight)。
在 Silverlight 的這個發行版本中,WCF 資料服務用戶端支援下列新的直接資料通訊協定 (OData) 功能:
·         OData 服務只能傳回 URI 所代表資源的總數,或是將這個資料列計數資訊與資源資料一併納入單一回應中。Silverlight 已經將 WCF 資料服務用戶端更新為允許您在應用程式中以查詢回應存取這個資料列計數資訊。如需詳細資訊,請參閱查詢資料服務 (WCF 資料服務) (英文)。
·         您可以設定資料服務以一組分頁回應的形式傳回要求的資源。Silverlight 已經將 WCF 資料服務用戶端更新為允許您處理這類的分頁回應。如需詳細資訊,請參閱載入延後內容 (WCF 資料服務) (英文)。
·         OData 服務傳回的查詢結果現在可以投影至任意定義的型別中。Silverlight 已經將 WCF 資料服務用戶端更新為支援在 LINQ 查詢中使用 select 子句 (在 Visual Basic 中為 Select) 以進行投影。如需詳細資訊,請參閱查詢投影 (WCF 資料服務) (英文)。
·         Silverlight 已經將 WCF 資料服務用戶端更新為讓您將二進位屬性當做來自支援媒體資源之 OData 服務的資料流,進行取得和設定作業。如需詳細資訊,請參閱載入延後內容 (WCF 資料服務) (英文)。
http://i.msdn.microsoft.com/Hash/030c41d9079671d09a62d8e2c1db6973.gif


WCF RIA 服務
WCF RIA 服務會簡化豐富網際網路應用程式 (Rich Internet Applications,RIA) N-Tier 解決方案 (例如 Silverlight 應用程式) 的開發。在開發 N-Tier RIA 解決方案時常見的問題是使中間層與展示層間的應用程式邏輯協調一致。RIA 服務解決這個問題的方式是,提供架構元件、工具和服務,讓 RIA 用戶端可以取得伺服器上的應用程式邏輯,而不需要手動複製該程式設計邏輯。RIA 服務會搭配 Silverlight 4 運作,但也可以做為個別的安裝。如需詳細資訊,請參閱 WCF RIA 服務 (英文)。
巡覽擴充性
您可以擴充 Silverlight 巡覽,以便支援任意的 URI 解析。例如,您可以針對 URI 重新導向、動態網頁產生以及伺服器的頁面隨選下載來實作巡覽擴充。
Frame 和 NavigationService 類別也會提供 Refresh 方法。當您使用可根據特定網頁之使用者互動來為相同 URI 傳遞不同內容的巡覽擴充時,這會很有用。例如,這樣就可以啟用一些需要使用者驗證的頁面巡覽情節。
如需詳細資訊,請參閱巡覽概觀。
Dynamic Language Runtime
Dynamic Language Runtime (DLR) 是指在 CLR 中加入了一組動態語言服務的新執行階段環境。為了支援 DLR,.NET Framework 中已加入新的 System.Dynamic 命名空間,而且運算式樹狀架構也延伸為納入用以表示控制流程的新型別,例如 LoopExpression 和 TryExpression。
如需詳細資訊,請參閱動態語言執行階段概觀 (英文)。http://i.msdn.microsoft.com/Hash/030c41d9079671d09a62d8e2c1db6973.gif


集合類別
新的 ISet<T> 介面是為集合 (Set) 的抽象而提供的。集合 (Set) 是具有唯一項目和特定作業的集合 (Collection)。ISet<T> 是由目前可供 Silverlight 應用程式使用的 HashSet<T> 類別所實作。
Tuple
Silverlight 4 提供 Tuple 類別以建立包含結構化資料的 Tuple 物件。它也提供泛型 Tuple 類別,這些類別含有一至七個型別參數,用以表示單一、配對、三重、四重等 Tuple 物件。為了支援含 9 個以上部分的 Tuple 物件,有一個泛型 Tuple 類別會有 8 個參數,其中 7 個是使用型別的參數,第 8 個則為使用任何 Tuple 型別的參數。
剖析和格式化時間間隔
為了支援區分文化特性的格式功能,TimeSpan 結構現在會實作 IFormattable 介面,而且包含 ToString、Parse、TryParse、ParseExact 和 TryParsExact 方法的新多載。其格式化和剖析方法也都支援標準與自訂格式字串。
其他核心功能
下列清單說明已加入 Silverlight 的新功能與改進功能。在這些項目中,有幾種是根據客戶意見完成的。
·         新的 String.IsNullOrWhiteSpace 方法能夠指定字串是 null、空白還是只包含空白字元。新多載已加入至能夠串連 System.Collections.Generic.IEnumerable<T> 集合成員的 String.Concat 與 String.Join 方法。
·         String.Concat 方法可讓您不用先將項目轉換為字串,即可串連可列舉集合中的每個項目。
·         StringBuilder.Clear 方法使得清除 StringBuilder 執行個體的工作更為輕鬆。
·         新的 Enum.HasFlag 方法能夠判斷在列舉值中是否已設定一個或多個位元欄位或旗標。Enum.TryParse 方法會傳回布林值,表示是否能順利剖析字串或整數值。
·         信任的應用程式可以使用新的 Path.Combine 方法多載,讓您結合多個檔案路徑。
·         新的檔案列舉方法可以改善信任的應用程式在存取目錄或逐一查看大型檔案各行時的效能。只有 [我的文件] 底下的目錄和檔案才是可存取的。如需詳細資訊,請參閱 Directory、DirectoryInfo 和 File 類別。
·         現在,您可以在 System.Lazy<T> 類別內包裝型別,藉此針對任一自訂型別啟用延遲初始化功能。
·         新的 Monitor.Enter(Object, Boolean) 方法多載採用布林參考,並且只有在已成功進入監視器時才會自動設為 true。
·         System.Guid 結構現在包含 TryParse 和 TryParseExact 方法。


Visual Studio 2010 已經對設計工具做了各種改進,以便協助您建立 Silverlight 應用程式。在 Visual Studio 2008 中,針對 Silverlight 專案提供的設計工具支援有所限制。在 Visual Studio 2010 中,您現在可以完成一些工作,例如在設計介面上使用滑鼠來選取並放置項目,以及使用 [屬性] 視窗來設定屬性。 如需詳細資訊,請參閱 Silverlight Designer for Visual Studio 2010。


Silverlight 目前在 Silverlight 社群技術預覽 (Community Technology Preview,CTP) 版本的 Windows Phone 7 Series 中有支援。如需詳細資訊,請參閱 Silverlight for Windows Phone 和 Windows Phone 開發 (英文)。

2011年9月27日 星期二

Silverlight學前研讀心得(二)

最近一兩週的研讀,初步接觸的訊息是,WPF是繼Window Form之後的下一代Windows核心技術,,他很強,在GUI的呈現效果與過往有顯著的不同,如同Win7跟XP的落差,但是,很多企業並不重視這個,「客戶要的需求達到就好了,作這麼漂亮幹嘛?會讓公司多賺個幾百萬嗎?」,我想很多老闆跟主管有這樣的想法並不意外,所以WPF並沒有受到廣泛的使用,(雖然Apple已經讓不少人明白好的使用者介面有多麼讓人喜歡,好的外觀有多麼吸引人,使用者感受對於產品的影響應該是不低的,但是,既然業界沒有這樣的想法,我們工程師也沒輒,所以一、兩個人研發產品介面,一個人獨立作一兩個月把東西作出來,在業界好像還是常態)


Silverlight則是WPF下一個階段的產品,他是WPF的子集合,利用新的開發機制,讓程式設計師可以用習慣的語言(VB或C#或其他)來撰寫Server端程式,然後用Html, Xml類似的TAG語法來撰寫介面(這點跟WPF一樣),然後前端的頁面又可以跟後端的程式溝通,透過WCF的中間服務蠻容易的達成。而這一切僅需要透過VisualStudio就可以做到(介面設計的部分,VisualStudio有內建一個Expression Blend用來設計介面與動畫特效,這個軟體說實在的跟Flash有類似)。然而,一樣的,在台灣Silverlight似乎還沒有很風行,業界用的少,大部分的人還是以Flash搭配Java Script或是用Ajax或是PHP等等,所以連書籍也非常的少,不到10本,很少書局可以看到Silverlight的書,這時候學習這兩個程式開發工具會不會太過冒險了呢?我想,有微軟當靠山,應該還挺穩的,只是時間的問題,多久之後才會贏過Flash,多久之後才能大幅提高佔有率,可以跟C#或C++匹敵呢?不知道,不過,這也代表競爭的人少,有些公司有這樣的職缺,我們要是很熟,很多人又不會,基本上這就是一種優勢了吧。

2011年9月26日 星期一

Silverlight學前研讀心得(一)

上個禮拜,花了蠻多時間研讀WPF的書,不過因為是很紮實的書籍,從基礎開始學習,並且一個範例一個範例的敲出程式,然後跑測試看看,這樣的學習時間,應該會拉的蠻長的沒錯,樂觀的看,沒有一個月以上,應該沒辦法學完整本。然後,很臨時的收到任務,我要接下Silverlight開發的產品,所以這個研讀就暫時先把比重放低,甚至先暫停也可能。








這個禮拜,幾乎都在研讀Silverlight的書,一開始看兩本章立民先生的書,【Silverlight2.0精華技術手冊-使用VC#】,以及【Silverlight3.0全面精通手冊】,這兩本書,很巧的,有好多篇幅都差不多,可能其中一本是另外一本的延續書嗎?不知道。其中的第二章跟第三章的內容:「應用程式的建置、執行、快取、分割」非常的生硬,但是對我來說,我又是非常的想要正確的學習這些基礎的知識,(註一),但是這兩本書幾乎是把MSDN網頁的內容照抄下來,什麼程式庫組件,應用程式組件,類別庫組件,..........名詞難懂就算了,這個還好,很多書都這樣,但他描述的語句生硬,難懂死了,感覺教科書都沒這麼難理解。可能是我的閱讀能力有問題也不一定。但是看這兩本書真的讓人覺得很挫折,覺得Silverlight是不是真的就這麼困難啊?還是我真的太爛了,僅學過ASP的我,學不會這高深的技巧呢?









還好還有另外一本書可以翻一下,董大偉先生的【Silverlight範例權威講座】這本閱讀起來輕鬆多了,因為是自撰書,用的詞句很白話,不但聽得懂,照著引導,很清楚的知道怎麼做出一個簡單的Silverlight的網頁程式,讓我重拾信心,不過可惜的是這本書後來以VB為主,C#的部分要自己摸索,而且這本書使用的版本是Silverlight2.0,我上網找了,新版的書籍是3.0而已,而且不論2.0這本或3.0這本都絕版了。好吧,或許他正在寫4.0的書,我等等看好了,因為我在書局翻了另外兩本書,感覺內容還蠻不錯的樣子。






這兩本就是【Silverlight 4 商業級應用程式開發】與【銀光誌—Silverlight 3.0 實例開發應用】,第一本,是翻譯書,用詞遣字方面沒有這麼好,但是至少可能因為原文寫的還挺淺顯的,所以翻譯的內容看起來似乎沒這麼難懂,且內容是4.0是目前少數僅有的新書了,另外一本,感覺是作者自撰書,所以內容看起來也蠻好懂,我想,就先用這兩本書當我入門書好了,希望能順利的學會這個新技能。










註一:
因為我想要能夠學習到這個Silverlight2.0完整的知識,這是我學習新東西的習慣,我喜歡把一個東西從基礎細節學好,再到延伸應用。從要怎麼開始一個專案,要怎麼根據需求規劃來切割我的程式,在方案總管看到的那些檔案,各自有什麼用途,我需要注意什麼設定,才能達到什麼需求,這些都是沒有學好的話,對我來說,寫出來的東西只是半桶水,只是容易不穩定的實驗品,因為不懂這些基礎,你對程式的掌握度會不夠,有時候出了一些BUG卻改不動,有時候,比方因為模組切割的不恰當,會導致程式效能不佳或是衍生很多撰寫上的困難,諸如此類的,讓我很重視程式開發工具的架構學習。

2011年9月20日 星期二

Silverlight第二章

Silverlight應用程式最終會被建置成一個應用程式封裝檔:(.xap),並存放於ClientBin目錄中。我們會在網頁中用<object>標記來指定所要執行的Silverlight應用程式封裝檔,這樣當此網頁被瀏覽器開啟時,就會下載並執行所指定的xap檔