淺談ASP.NET中最簡單的自定義控件_.Net教程

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

      推薦:.net中webconfig 詳解
      這篇文章主要介紹了.net中webconfig 詳解,需要的朋友可以參考下 .net 提供的是針對當前機器的配置。---名稱:machine.config 運行機制:asp.net網站IIS啟動的時候會加載配置文件中的配置信息,然后緩存這些信息,這樣就不必每次去讀取配置信息。在運行過程中asp.net應

        這篇文章主要簡單介紹了ASP.NET中最簡單的自定義控件,以及核心代碼示例,需要的朋友可以參考下

        ASP.NET用戶控件一般適用于產生相對靜態的內容,所以沒有builtin的事件支持。本文討論用戶控件返回事件的方法。

        假定用戶控件(UserControl.ascx)中包含按鈕控件AButton,希望實現按AButton按鈕時,包含該用戶控件的頁面可以接收到事件。為此,小雞射手在用戶控件和頁面的代碼中分別作了處理。

        UserControl.ascx.cs中的處理:

        1. 定義public的事件委托,如ClickEventHandler;

        2. 在UserControl類中聲明事件,如Click;

        3. 在UserControl類中定義引發事件的方法,如OnClick()方法;

        4. 在UserControl類的相關方法中調用引發事件的方法,如在Button_Click()中調用OnClick()。

        核心代碼示意如下:

        代碼如下:

        public delegate void ClickEventHandler(object sender, EventArgs e);

        public class MyUserControl : System.Web.UI.UserControl

        {

        protected System.Web.UI.WebControls.Button AButton;

        public event ClickEventHandler Click;

        protected void OnClick(EventArgs e)

        {

        if (Click!=null) Click(this, e);

        }

        private void AButton_Click(object sender, System.EventArgs e)

        {

        this.OnClick(e);

        }

        }

        包含UserControl的頁面cs文件中的處理:

        1. InitializeComponent()中增加事件處理程序,采用FindControl方法找到UserControl;

        2. 定義事件處理方法,在該方法中處理UserControl的事件,如UserControl_Clicked()。

        核心代碼示意如下:

        代碼如下:

        private void InitializeComponent()

        {

        this.Load += new System.EventHandler(this.Page_Load);

        MyUserControl uc = this.FindControl("myUserControlID") as MyUserControl;

        uc.Click += new ClickEventHandler(this.UserControl_Clicked);

        }

        private void UserControl_Clicked(object sender, System.EventArgs e)

        {

        // UserControl_Clicked event hanlder

        }

       

        總結一下,其實就是將事件機制利用手工編程的方法加進去:加入一般控件IDE自動生成的代碼。順便說一下,C#的事件機制實現了Obeserver pattern,除了UI還可以用于業務層,能有效地降低對象間的耦合度,像UserControl那樣,根本無需知道包含它的頁面對象是誰!

       

      分享:ASP.NET抓取網頁內容的實現方法
      這篇文章主要介紹了ASP.NET抓取網頁內容的實現方法,涉及使用HttpWebRequest及WebResponse抓取網頁內容的技巧,需要的朋友可以參考下 本文實例講述了ASP.NET抓取網頁內容的實現方法。分享給大家供大家參考。具體實現方法如下: 一、ASP.NET 使用HttpWebRequest抓取網頁內

      來源:模板無憂//所屬分類:.Net教程/更新時間:2015-02-05
      相關.Net教程