程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> 關於C# >> 如何在IE中托管Windows Form

如何在IE中托管Windows Form

編輯:關於C#

如果曾經使用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";
}

既然已經創建了控件,下面我們來編譯該項目,並創建可執行代碼。

創建HTML網頁

在這一步驟中,我們將創建一個HTML文檔,並在其中插入用來激活Windows Forms控件的對象標志。HTML網頁如下:

<html>
<body>
<p>Hello World Control<br> <br></body>
<object id="HelloWorldControl1"classid="http:HelloWorldControl.dll#HelloWorldControl.HelloWorldCtl"
height="500" width="500" VIEWASTEXT>
</object>
<br><br>
</html>

在對象標志的classid屬性中,我們將路徑指定為控件庫組合體和控件的全名,控件的全名包括名字空間和控件類名字。從上面的代碼中可以看到,組合體和控件全名之間用#號隔開,這二個參數構成了識別該控件的唯一控件標識符。由於是唯一地由名字HelloWorldControl1標識的,我們還可以針對該控件編寫客戶端腳本代碼。

配置虛擬目錄

創建HTML代碼後,我們就可以創建一個名為HelloWorldControlHost的新虛擬目錄,並在其中添加控件(HelloWorldControl.dll)和HTML文檔(HelloWorld.htm)。除了配置虛擬目錄外,將虛擬目錄的執行權限設置為Scripts也是非常重要的。如果將其執行權限設置為Scripts & Executables,控件就不會被正確地激活。通過打開虛擬目錄的Properties窗口,我們可以驗證虛擬目錄的權限。

配置代碼訪問權限

如果控件在企業內部網上,它公正確地執行,但如果要運行來自互聯網網站上的控件,就需要對IE進行配置或修改安全策略,使它能夠運行。通過將托管網頁看成是受信任區段的一部分,就能夠做到這一點。為了將你的站點設置為受信任區段的一部分,我們可以在IE中通過選擇“工具”->“選項”->“安全”->“受信任的站點”,然後將你的站點添加到列表中,再點擊“OK”按鈕。這樣下次再浏覽到該網頁時,控件就會得到正確的執行,因為已經設置了互聯網許可。

運行控件

要運行控件,只要在浏覽器中浏覽托管該控件的HTML網頁即可。在顯示的HTML網頁中,如果點擊“Click Here”命令按鈕,控件就會如下圖所示顯示“Hello World”的消息。

在這個例子中,我們主要演習了如何創建簡單的Windows Forms控件,並在IE中托管它。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved