ASP.NET 2.0服務(wù)器控件之客戶端功能(3)_.Net教程
推薦:ASP.NET 2.0發(fā)送電子郵件中存在的問題 在新發(fā)行的ASP.NET 2.0版本中,微軟不再建議使用System.Web.Mail命名空間而代之以新的System.Net.Mail命名空間。在這個新庫中引入了許多新特征,但是在發(fā)送郵件的方式方面也相應(yīng)地帶入了一
除了以上幾個方法之外,ClientScriptManager類還包括其他一些相關(guān)方法,有興趣的讀者可以閱讀相關(guān)資料。通過在服務(wù)器控件中靈活使用以上方法,我們可完成為控件加入客戶端行為,同時也帶來了以下好處:
(1)有效的減少所顯示頁面的大小,因為很多有關(guān)客戶端功能的代碼都封裝到了客戶端腳本文件中,在控件中只需引用腳本文件的地址即可。
(2)由于同一控件共享腳本文件,因此通過瀏覽器的緩存機制,可以改善應(yīng)用程序的性能。
�。�3)提高了控件的靈活性和可擴展性。通過修改腳本文件,控件開發(fā)者可以很容易的修改客戶端功能而不用編譯服務(wù)器控件。
另外,在對復(fù)雜客戶端功能處理的過程中,有時還需要在客戶端腳本中訪問控件�?丶_發(fā)者可以在腳本中訪問呈現(xiàn)到客戶端的對象,并且對其進(jìn)行操作。下面來簡單介紹一些有關(guān)內(nèi)容。
Control基類有一個ClientID的屬性,它作為所呈現(xiàn)的元素的ID屬性呈現(xiàn)。ASP.NET動態(tài)為一個控件生成ClientID,并且確保頁上每一控件的ClientID是唯一的。因此,可通過在文檔對象模型中使用控件的ID在客戶端上訪問該控件(即,由該控件呈現(xiàn)的元素)�?丶可以使用ClientID為它可以呈現(xiàn)的任何附加元素(例如隱藏域)生成唯一名稱。
將ClientID的值發(fā)出到內(nèi)聯(lián)腳本中(或者發(fā)出到腳本庫的代碼中)可能是較為棘手的,因為該ClientID必須插在字符串變量中的正確位置。以下實例使用轉(zhuǎn)義符將ClientID插入構(gòu)成內(nèi)聯(lián)腳本的字符串中。
另外,還可以使用String類的重載的Format方法撰寫使用ClientID的客戶端腳本。
4. 部署客戶端文件的方法
默認(rèn)安裝的情況下,在wwwroot文件夾下存在一個子文件夾asp_client,其中保存了用于支持智能導(dǎo)航、驗證控件等功能的客戶端腳本文件。很顯然這些文件非常重要。為了提高應(yīng)用的規(guī)范性,建議開發(fā)人員在部署客戶端文件過程中,采用以下方法。
· 將包含有客戶端腳本的文件夾置于asp_client文件夾中,尤其是對于那些安裝在全局配件緩存(GAC)中的控件更應(yīng)該這樣做。
· 包含腳本的文件夾推薦使用與控件相關(guān)的名稱。
· 推薦在包含腳本的文件夾下不要直接放置腳本文件,而是再創(chuàng)建一個名稱為控件版本號的文件夾,將腳本文件放置其中。
例如,開發(fā)人員創(chuàng)建了一個版本為1.0的服務(wù)器控件MyControl,其關(guān)聯(lián)一個客戶端腳本ClientScript.js,并且將該控件加入了GAC中。這時推薦部署客戶端腳本文件的路徑為:c:\Inetput\wwwroot\asp_client\MyControl_Client\1.0\ClientScript.js。另外,在客戶端文件庫中存儲的并不僅是腳本文件,也可以加入控件所需的樣式表文件、圖片等其他文件。
以上為部署客戶端文件的推薦方法,那么這是不是說明所有的客戶端腳本文件都需要遵循以上規(guī)則呢?當(dāng)然不是。只要開發(fā)人員從實際出發(fā),從提高程序的可維護(hù)性和方便性著眼,那么無論客戶端腳本文件置于何處,都是可以的。
5. 小結(jié)
本文主要介紹了與實現(xiàn)服務(wù)器控件客戶端功能相關(guān)的內(nèi)容。這些內(nèi)容對于開發(fā)出交互性強的服務(wù)器控件非常重要。掌握這些內(nèi)容并不困難,真正困難的是如何開發(fā)完成客戶端功能的CSS文件、JS腳本、DHTML程序等。這些技術(shù)的掌握不是一朝一夕就可以完成的,它需要扎實的基礎(chǔ),刻苦的鉆研。而所有這些技術(shù)和精神品質(zhì)都是一名合格的開發(fā)人員所必需掌握的精髓,缺一不可。
Page.RegisterArrayDeclaration("Page_Validators", element);
分享:ASP.NET 2.0中層次數(shù)據(jù)的處理 數(shù)據(jù)源控件可以同時暴露平面表格式的或?qū)哟蔚臄?shù)據(jù)。前面演示的SqlDataSource和ObjectDataSource控件都是平面表格式的數(shù)據(jù)源控件。ASP.NET 2.0還包含兩個層次數(shù)據(jù)源控件:用于連接XML文件的X
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進(jìn)度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關(guān)鏈接:
- 教程說明:
.Net教程-ASP.NET 2.0服務(wù)器控件之客戶端功能(3)
。