这是我的文章备份,有空请到我的网站走走,
http://www.dotblogs.com.tw/mis2000lab/
才能掌握我提供的第一手信息,谢谢您。
http://www.dotblogs.com.tw/mis2000lab/archive/2011/07/26/placeholder_findcontrol_eventhandler.aspx
[习题].FindControl()方法 与 PlaceHolder控件 #2(动态加入「子控件」的事件)
这个范例,源自于 -- [习题].FindControl()方法 与 PlaceHolder控件 #1(动态加入「子控件」,因Page_Load而发生的错误)
已经写在书本上集,第三章里面了。Ch. 3-12节
顺便提一下,怎么自己找答案?
例如:我搜寻关键词「ASP.NET 动态加入事件」,答案就跑出来了。
因为书本里面的确没提到,所以我补充如下:
您可以在微软的这篇文章里面,知道该怎么作。
HOW TO:在执行阶段时动态系结 ASP.NET Web 网页中的事件处理例程
http://msdn.microsoft.com/zh-tw/library/t3d01ft1%28v=VS.100%29.aspx
建议您也参考 jeff -- ASP.NET 魔法学园的文章,会更清楚
[Asp.Net] 在 Web Form 动态建立控件的正确方法
http://www.dotblogs.com.tw/jeff377/archive/2008/03/17/1738.aspx
书本上集(第三章)的范例。 Ch. 3-12节
VB语法 =========================================================
'--正确运作。
Protected Sub Page_Init(sender As Object, e As System.EventArgs) Handles Me.Init
Dim Button1 As New Button
Button1.Text = "程序里头,动态产生的按钮(按下之后,会执行自订的事件--myButton1EventHandler)"
Button1.ID = "Button_DynaAdd"
PlaceHolder1.Controls.Add(Button1)
'=========================================
AddHandler Button1.Click, AddressOf myButton1EventHandler
'-- AddressOf后面的事件,请按下警告讯息就会自动产生。
'-- 自订的事件。建议写在 Page_Init()里面。
'--资料来源:http://msdn.microsoft.com/zh-tw/library/t3d01ft1%28v=VS.100%29.aspx
'=========================================
Dim TextBox1 As New TextBox
TextBox1.Text = "程序里头,动态产生的文字输入方块"
TextBox1.ID = "TextBox_DynaAdd"
PlaceHolder1.Controls.Add(TextBox1)
End Sub
Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
'== 透过 FindControl抓取 PlaceHolder里面的「子控件」
Dim getTextBox As New TextBox
getTextBox = CType(PlaceHolder1.FindControl("TextBox_DynaAdd"), TextBox)
Label1.Text = getTextBox.Text
End Sub
'=========================================
Private Sub myButton1EventHandler(sender As Object, e As EventArgs)
Response.Write("<script language=javascript>window.alert(""自订的事件-- myButton1EventHandler"");</script>")
End Sub
'=========================================
C#语法 =========================================================
protected void Page_Init(object sender, EventArgs e)
{
Button Button1 = new Button();
Button1.ID = "Button_DynaAdd"; //==重点!!==
Button1.Text = "程序里头,动态产生的按钮(按下之后,会执行自订的事件--myButton1EventHandler)";
this.PlaceHolder1.Controls.Add(Button1);
//=========================================
Button1.Click += new System.EventHandler(this.myButton1EventHandler);
//-- 自订的事件。建议写在 Page_Init()里面。
//-- 资料来源:http://msdn.microsoft.com/zh-tw/library/t3d01ft1%28v=VS.100%29.aspx
//=========================================
TextBox TextBox1 = new TextBox();
TextBox1.ID = "TextBox_DynaAdd"; //==重点!!==
TextBox1.Text = "程序里头,动态产生的文字输入方块";
this.PlaceHolder1.Controls.Add(TextBox1);
}
protected void Button2_Click(object sender, EventArgs e)
{
//== 透过 FindControl抓取 PlaceHolder里面的「子控件」
TextBox getTextBox = new TextBox();
getTextBox = (TextBox)this.PlaceHolder1.FindControl("TextBox_DynaAdd");
Label1.Text = getTextBox.Text;
}
//=============================================
protected void myButton1EventHandler(object sender, EventArgs e)
{
Response.Write("<script language=javascript>window.alert(\"自订的事件-- myButton1EventHandler\");</script>");
}
//=============================================
这篇文章也很有参考价值!
[Will 保哥] ASP.NET 动态加载的控件一定要注意的事
http://blog.miniasp.com/post/2008/06/24/ASPNET-Dynamic-Load-Controls-Attention.aspx
=======================================================================
如果要加入 Client端(JavaScript程序),请参阅这篇文章:
HOW TO:以动态方式将客户端指令码加入至 ASP.NET Web 网页
http://msdn.microsoft.com/zh-tw/library/ms178207%28v=VS.100%29.aspx
............................. 寫信給我,mis2000lab (at) yahoo.com.台灣......
ASP.NET 4.0 專題實務(松崗出版)
上集( .NET 4.0版)全新改寫。範例增加66%,內容增加35%。上市以來,熱銷五刷!
下集(第二版,黑皮書)上市一個月熱銷再刷,2010一年內(第一版)熱銷四刷!第二版半年熱銷四刷! 下集內容增加66%。
上下兩集將近2,000頁,堪稱國內 [最詳盡]的ASP.NET範例教學。
南無普光佛 南無普明佛 南無普淨佛 南無多摩羅跋栴檀香佛 南無栴檀光佛 南無摩尼幢佛 南無歡喜藏摩尼寶積佛 南無一切世間樂見上大精進佛 南無摩尼幢燈光佛
南無慧炬照佛 南無海德光明佛 南無金剛牢強普散金光佛 南無大強精進勇猛佛 南無大悲光佛 南無慈力王佛 南無慈藏佛 南無栴檀窟莊嚴勝佛 南無賢善首佛
南無善意佛 南無廣莊嚴王佛 南無金華光佛 南無寶蓋照空自在力王佛 南無虛空寶華光佛 南無琉璃莊嚴王佛 南無普現色身光佛 南無不動智光佛 南無降伏眾魔王佛
南無才光明佛 南無智慧勝佛 南無彌勒仙光佛 南無善寂月音妙尊智王佛 南無世淨光佛 南無龍種上尊王佛 南無日月光佛 南無日月珠光佛 南無慧幢勝王佛
南無師子吼自在力王佛 南無妙音勝佛 南無常光幢佛 南無觀世燈佛 南無慧威燈王佛 南無法勝王佛 南無須彌光佛 南無須曼那華光佛 南無優曇鉢羅華殊勝王佛
南無大慧力王佛 南無阿閦毗歡喜光佛 南無無量音聲王佛 南無才光佛 南無金海光佛 南無山海慧自在通王佛 南無大通光佛 南無一切法常滿王佛 南無釋迦牟尼佛
南無金剛不壞佛 南無寶光佛 南無龍尊王佛 南無精進軍佛 南無精進喜佛 南無寶火佛 南無寶月光佛 南無現無愚佛 南無寶月佛 南無無垢佛 南無離垢佛
南無勇施佛 南無清淨佛 南無清淨施佛 南無娑留那佛 南無水天佛 南無堅德佛 南無栴檀功德佛 南無無量掬光佛 南無光德佛 南無無憂德佛
南無那羅延佛 南無功德華佛 南無蓮華光遊戲神通佛 南無財功德佛 南無德念佛 南無善名稱功德佛 南無紅燄帝幢王佛 南無善遊步功德佛 南無鬪戰勝佛
南無善遊步佛 南無周匝莊嚴功德佛 南無寶華遊步佛 南無寶蓮華善住娑羅樹王佛 南無法界藏身阿彌陀佛
............................. 寫信給我,mis2000lab (at) yahoo.com.台灣......