婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 淺談ASP.NET中最簡(jiǎn)單的自定義控件

淺談ASP.NET中最簡(jiǎn)單的自定義控件

熱門標(biāo)簽:寧夏機(jī)器人電銷 400電話辦理最優(yōu)質(zhì) 河南語(yǔ)音外呼系統(tǒng)公司 400免費(fèi)電話怎么辦理 關(guān)于宗地圖標(biāo)注技術(shù)規(guī)范 t3出行地圖標(biāo)注怎么做 河北網(wǎng)絡(luò)回?fù)芡夂粝到y(tǒng) 威海電銷 外呼電銷機(jī)器人軟件

ASP.NET用戶控件一般適用于產(chǎn)生相對(duì)靜態(tài)的內(nèi)容,所以沒(méi)有builtin的事件支持。本文討論用戶控件返回事件的方法。

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

        UserControl.ascx.cs中的處理:
        1. 定義public的事件委托,如ClickEventHandler;
        2. 在UserControl類中聲明事件,如Click;
        3. 在UserControl類中定義引發(fā)事件的方法,如OnClick()方法;
        4. 在UserControl類的相關(guān)方法中調(diào)用引發(fā)事件的方法,如在Button_Click()中調(diào)用OnClick()。

        核心代碼示意如下:

復(fù)制代碼 代碼如下:

        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的頁(yè)面cs文件中的處理:

     1. InitializeComponent()中增加事件處理程序,采用FindControl方法找到UserControl;
     2. 定義事件處理方法,在該方法中處理UserControl的事件,如UserControl_Clicked()。
核心代碼示意如下:

復(fù)制代碼 代碼如下:

     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
     }

總結(jié)一下,其實(shí)就是將事件機(jī)制利用手工編程的方法加進(jìn)去:加入一般控件IDE自動(dòng)生成的代碼。順便說(shuō)一下,C#的事件機(jī)制實(shí)現(xiàn)了Obeserver pattern,除了UI還可以用于業(yè)務(wù)層,能有效地降低對(duì)象間的耦合度,像UserControl那樣,根本無(wú)需知道包含它的頁(yè)面對(duì)象是誰(shuí)!

您可能感興趣的文章:
  • asp.net自定義控件代碼學(xué)習(xí)筆記
  • asp.net 自定義控件實(shí)現(xiàn)無(wú)刷新上傳圖片,立即顯示縮略圖,保存圖片縮略圖
  • Asp.net 動(dòng)態(tài)加載用戶自定義控件,并轉(zhuǎn)換成HTML代碼
  • asp.net DropDownList自定義控件,讓你的分類更清晰
  • 關(guān)于asp.net 自定義分頁(yè)控件
  • ASP.NET單選按鈕控件RadioButton常用屬性和方法介紹
  • ASP.NET中 CheckBox復(fù)選框控件的使用
  • ASP.NET中CheckBoxList復(fù)選框列表控件詳細(xì)使用方法
  • ASP.NET中 RadioButtonList 單選按鈕組控件的使用方法
  • Asp.net自定義控件之單選、多選控件

標(biāo)簽:吉林 賀州 池州 樂(lè)山 廣元 淮北 固原 咸寧

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《淺談ASP.NET中最簡(jiǎn)單的自定義控件》,本文關(guān)鍵詞  淺談,ASP.NET,中,最簡(jiǎn)單,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《淺談ASP.NET中最簡(jiǎn)單的自定義控件》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于淺談ASP.NET中最簡(jiǎn)單的自定義控件的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 巴彦淖尔市| 肃宁县| 略阳县| 太和县| 周至县| 罗山县| 孟村| 晴隆县| 集贤县| 阿坝县| 临西县| 武城县| 大同市| 万山特区| 天水市| 潮州市| 佳木斯市| 巢湖市| 宜城市| 正定县| 正阳县| 洛隆县| 枣强县| 泸溪县| 绍兴县| 积石山| 偃师市| 白水县| 上犹县| 富平县| 承德县| 长兴县| 福安市| 凉山| 桃园县| 玉田县| 富平县| 岳西县| 博乐市| 启东市| 景泰县|