如果曾經使用Java開發過Web應用程式,你一定會對Java applets比較熟悉,這是一種基本上在瀏覽器中啟動並執行小型程式。當瀏覽器載入包含有Java applets標誌的HTML代碼時,Java applets就會執行,網頁中的Windows Forms控制項的運行方式與Java applets相似。我們可以使用由Windows Forms技術提供的豐富的類開發Windows Forms控制項,然後在網頁中部署這些控制項,當瀏覽器載入這些網頁時,就會執行包含在Windows Forms控制項中的代碼。
.NET的偉大之處之一是它提供的與IE的無縫整合能力。例如,我們甚至能夠在使用者不知道的情況下從IE中啟用一個Windows Forms控制項。儘管利用了由.NET CLR提供的Code Access Security的所有功能,但這是在無需進行註冊的情況下完成的。
當開發Windows Forms控制項時,我們就通過繼承的方式擁有了Windows Forms類所提供的所有功能。例如,我們可以使用Windows Forms控制項驗證技術對使用者輸入的資料進行廣泛的驗證,同樣地,我們可以從表單控制項中調用遠程Web服務。通過使用所有這些技術,我們就能夠使用.NET平台開發豐富、功能強大的應用程式。
實現
在這一部分,我們將學習如何建立簡單的Windows Forms控制項並將它託管在IE中。下面是啟用IE中Windows Forms控制項的5個步驟:
·建立Windows Forms控制項。
·建立包含標識Windows Forms控制項的對象標誌的HTML文檔。
·配置正確啟用控制項所需要的虛擬目錄。
·配置代碼存取權限。
·運行該控制項。
下面我們就來詳細地學習上面的每一個步驟。
建立Windows Forms控制項
在這一步驟中,我們將建立一個簡單的Windows Forms控制項,它向使用者顯示“Hello World”資訊。如政略所示,我們將首先建立一個名為HelloWorldControl的新Visual C# Windows Control Library項目。
一旦建立項目後,我們將把預設的使用者控制項更名為HelloWorldCtl。我們將在使用者控制項上添加一個名為lblMessage的標籤控制項和一個名為btnClick的按鈕。當使用者點擊點擊按鈕時,程式就會執行下面的代碼,向使用者顯示一個簡單的資訊:
private void btnClick_Click(object sender, System.EventArgs e)
{
lblDisplayMessage.Text = "Hello World";
}
既然已經建立了控制項,下面我們來編譯該項目,並建立可執行代碼。