asp.net總結之使用者控制項

來源:互聯網
上載者:User

1、首頁面的pageload事件執行後才執行使用者控制項的pageload事件

2、在使用者控制項類中添加public屬性,可以開放相關的使用者控制項上的控制項或控制項的屬性給首頁面調用

        //公開某控制項的Text屬性        public string Message        {            get { return msglbl.Text; }            set { msglbl.Text = value; }        }        //公開某控制項全部屬性        public Label Msglbl        {            get { return msglbl; }        }

 

3、使用者控制項做可以做局部緩衝使用,可以在使用者控制項頁面上加上

<%@ OutputCache Duration="10" VaryByParam="keyword" VaryByControl="msglbl" Shared="true" %>

其中Duration為緩衝時間,VaryByParam為是查詢參數(是否通過不同的查詢參數做緩衝,多個用分號分開),VaryByControl為根據控制項值的做緩衝(多個控制項用分號分開),share為true則說明當有多個不同頁面引用這個使用者控制項時,也採用緩衝的使用者控制項,而不是新建立使用者控制項對象

4、首頁面影響使用者控制項上的操作事件 :比如使用者控制項上有個按鈕控制項,點擊控制項會響應首頁面上的事件

  1)在使用者控制項類中添加一個事件委託

public event EventHandler Myevent; 

  2)在使用者控制項的按鈕事件中調用該委託

        protected void btn_OnClick(object sender, EventArgs e)        {            if (Myevent != null)                Myevent(this, e);            else                throw new Exception("fdsa");        }

 

  3)在首頁面中定義事件響應的方法

        protected void My_Click(object sender, EventArgs e)        {            albl.Text = "test";        }

 

  4)在首頁面中page_load事件中添加註冊事件

        protected void Page_Load(object sender, EventArgs e)        {            myAscx.Myevent += My_Click;        }

這樣當點擊使用者控制項上的按鈕時,將執行首頁面上的事件。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.