*** Silverlight 技術養成顧問系列- HTML/JavaScript 篇 ***
Silverlight 本身透過外掛的型式嵌入網頁中,但是在 HTML網 頁中, Sivlerlihgt 並非一座孤島,若是你己經習慣透過 DOM 與 JavaScript 來處理網頁 UI 元素, Silverlight 同樣提供了與 HTML 互動的相關支援,讓你可以直接從 Silverlight 撰寫後置程式碼與 HTML 元素進行溝通,而這個支援是雙向的,意謂著你也可以直接於網頁寫下 JavaScript ,操作 Silverlight 元素。如果你已經有現成的 HTML 網頁,想要整合 Silverligth 技術,並且讓它與網頁網頁進行溝通,這些功能可以讓你輕易的達到與 HTML 網頁互動的目的,甚至操作其中的網頁元素。
相較於ASPNET, Silverlight 是一種非常純粹的客戶端技術,它與HTML網頁同樣均位於客戶端的環境底下執行,因此它與網頁的互動要比 ASP.NET 來得容易,而提供相關功能的類別,均封裝於System.Windows.Browser 命名空間。
System.Windows.Browser 命名空間提供了兩個用來存取以及維護DOM的類別,HtmlPage 與 HtmlDocument ,前者允許 Silverlight 能夠執行瀏覽器的DOM存取操作,後者用來表示瀏覽器中的 HTML文件。舉凡存取HTML元素物件(例如 input ),指派事件,甚至觸發網頁的 Submit 事件,都可以透過HtmlDocument 類別所提供的方法,取得所需的HTML元素以執行特定的作業,它是存取維護DOM最主要的功能類別。 HtmlDocument 並沒有建構式,我們透過 HtmlPage的HtmlDocument 屬性取得此物件,它是一個唯讀靜態成員,定義如下:
public static HtmlDocument Document { get; }
以下的程式碼取得可用的 HtmlDocument 物件,如此一來便能夠執行各種DOM相關的維護作業。
HtmlDocument htmldoc = HtmlPage.Document;
HtmlPage 包含數個可用的屬性,分別用來取得具備與瀏覽器網頁互動的功能類別,這些屬性成員列舉說明如下:
- BrowserInformation:用來取得瀏覽器的一般資訊,例如名稱、版本以及作業系統等等。
- Document:取得瀏覽器文件物件。
- IsEnabled:取得值,指出 HTML 橋接功能的其餘公用介面區是否已啟用。
- Plugin:取得Silverlight控制項元素的參照。
- Window:取得瀏覽器視窗物件。
這些屬性相當有用,它們回傳特定的功能物件,無論瀏覽器的一般資訊或是複雜的DOM文件存取,都可以進一步的經由這些物件進行存取。
下一次,我們來看一些簡單的範例。:)

0 意見:
張貼意見