ASP.NET 2.0服務器控件之客戶端功能_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:ASP.NET 2.0發送電子郵件中存在的問題
        在新發行的ASP.NET 2.0版本中,微軟不再建議使用System.Web.Mail命名空間而代之以新的System.Net.Mail命名空間。在這個新庫中引入了許多新特征,但是在發送郵件的方式方面也相應地帶入了一

        多數在表示層應用的服務器控件主要由兩個部分組成:服務器端功能和客戶端功能。服務器端功能永遠是服務器控件的核心,而隨著技術的發展,客戶端功能也逐漸變得越來越重要。只有兩個部分互相配合,才能創建出功能強大、界面豐富的服務器控件。本文將討論在服務器控件中實現客戶端功能的相關問題,具體內容包括客戶端功能概述、實現簡單客戶端功能、實現復雜客戶端功能,以及部署客戶端文件的實現方法等內容。

        1. 客戶端功能簡介

        在Web編程中,客戶端功能傳統上是由Web頁開發人員負責,并且不被封裝在服務器組件中。ASP.NET脫離了這一范疇并使服務器控件能夠發出客戶端腳本,從而使服務器控件能夠將客戶端處理與服務器端處理結合起來。實現客戶端功能對于提高服務器控件的交互性和可擴展性的意義重大。例如,常見的TreeView、TabStrip、ToolBar控件等,這些優秀的服務器控件具有很強的交互性和豐富的用戶界面,而這些特征的實現與客戶端功能是密不可分的。

        實現客戶端功能的技術主要是客戶端腳本(JavaScript、VBScript等)和DHTML。因此,作為一名合格的開發人員必須具有熟練應用這些技術的能力。除此之外,還要掌握將客戶端功能與服務器控件密切結合的方法。這些內容包括:實現簡單客戶端功能、實現復雜客戶端功能、部署客戶端腳本文件的方法。

        2. 實現簡單客戶端功能

        如果自定義服務器控件的客戶端功能比較簡單,例如,僅僅是彈出窗口或者改變背景顏色等,那么對于這種情況,通過不使用單獨的客戶端腳本文件封裝,而是直接在控件呈現中實現。其實現的關鍵是在控件的Attributes中添加適當的客戶端處理程序。以下實例說明從System.Web.UI.WebControls.Button類派生的控件MyClickButton,它為客戶端單擊事件提供事件處理程序。請看下面的代碼:

        如果讀者已經閱讀了前面有關控件呈現的文章,那么很容易理解以上代碼。以上代碼重寫了AddAttributesToRender方法,它為MyClickButton控件定義了一個名為onclick的Attribute,其值指示在客戶端彈出一個包含自定義信息的確認窗口。如果讀者所開發的服務器控件的客戶端功能都比較簡單,那么可以嘗試利用重寫AddAttributesToRender的方法予以實現。

        下面是為使用MyClickControl控件而創建的ASPX頁面源代碼。

        當用戶點擊MyClickControl控件時,立刻彈出一個包含提示信息的確認窗口。需要注意的是彈出確認窗口并不是由于頁面回傳,而是用戶激發客戶端處理程序的結果。當點擊"確定"按鈕之后,才會發生頁面回傳。

      <%@ Page Language = "C#" %>
      <%@ Register TagPrefix="Custom" Namespace="MyControls" Assembly = "MyControls" %>
      <html>
      <body>
      <form runat=server>
      請點擊下面的按鈕
      <Custom:MyClickButton Id = "demo" runat=server/>
      <br>
      </form>
      </body>
      </html>

      public class MyClickButton : Button{
      //相關代碼
      ......
      protected override void AddAttributesToRender(HtmlTextWriter writer) {
      base.AddAttributesToRender(writer);
      writer.AddAttribute("onclick", "window.confirm('謝謝您! ');");
      }
      }

      分享:ASP.NET 2.0中層次數據的處理
        數據源控件可以同時暴露平面表格式的或層次的數據。前面演示的SqlDataSource和ObjectDataSource控件都是平面表格式的數據源控件。ASP.NET 2.0還包含兩個層次數據源控件:用于連接XML文件的X

      共3頁上一頁123下一頁
      來源:模板無憂//所屬分類:.Net教程/更新時間:2008-08-22
      相關.Net教程