ASP.NET自訂使用者控制項
使用者自訂控制項 - User Control - MIS2000 Lab.的 ASP.NET 4.0 專題實務-教學與分享- 點部落
Web 使用者控制項和 Web 自訂控制項
[ASP.NET]動態新增User Control,並設定屬性值與取屬性值
UserControl傳值、執行父網頁事件
FindControl()方法 與 PlaceHolder控制項 #1 (動態加入「子控制項」的事件) FindControl()方法 與 PlaceHolder控制項 #2(動態加入「子控制項」的事件)
[C#.NET] 如何 使用 委派 Delegate / 事件 event
傳統ASP有include方法可以將其他程式帶到主程式裡,到了.net時代就不要再用這個古老的方法了。在.net中我們可以自訂使用者控制項
(.ascx)讓不同的程式共用,不僅可以自訂控制項的操作介面,還能自訂它的屬性和方法。
1.新增自訂控制項:
首先,新增一個「web使用者控制項」項目,假設命名為wu.ascx,我們可以像開發.aspx一樣,從工具箱拖曳控制項到wu.ascx的設計頁面中,
並撰寫處理的程式碼。比較特別的是,這個.ascx檔會成為一個新的控制項,並可以自訂它的屬性和方法。
2.自訂屬性:
假設.ascx中有一個TextBox1控制項,我們想取它的Text值當做屬性,則我們可以加上這段程式碼:
public string text //text為屬性名稱
{
get{return TextBox1.Text;} //取得TextBox1.Text值當做text的值
}
3.自訂方法:
同上例,若我們要自訂一個將Textbox1.Text值改為123的方法,寫法如下:
public void test()
{
Textbox1.Text = "123";
}
4.自訂事件
我們還可以自訂這個控制項的事件,假設我們在wu.ascx拖曳了一個Button1控制項,要自訂Button1按下的事件,寫法如下:
public event EventHandler btn_Click; //自訂一個名為btn_Click的事件
protected void Button1_Click(object sender, EventArgs e) //這是Button1的Click事件
{
if (btn_Click != null)
{
btn_Click(sender, e); //指定這個事件到我們自訂的btn_Click
}
}
5.使用自訂控制項
要使用自訂控制項wu,只要將wu.ascx檔拖曳到.aspx的設計畫面中,就跟拖曳工具箱的方式一樣,wu自訂控制項就會出現在畫面上。
(1)承上例,在.aspx中使用wu的屬性(印出text屬性值):
Response.Write(wu.text);
(2)承上例,在.aspx中使用wu的"test"方法:
wu.test();
(3)承上例,在.aspx中使用wu的btn_Click事件:
protected void btn_Click(object sender, EventArgs e)
{
//事件發生要處理的內容
}