StringBuilder sb=new StringBuilder();
sb.Append("for(int i=0;i<5;i++){");
sb.Append("TextBox tb=new TextBox();");
sb.Append("tb.ID=\"com\"+i.ToString();");
sb.Append("tb.Text=\"姓名\"+i.ToString();");
sb.Append("this.FindControl(\"Form1\").Controls.Add(tb);}");
我要如何才能执行这段代码,在Form1中生成5个TextBox控件呀

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/3985/3985223.xml?temp=.3776209
      

  2.   

    教你做一个可以弹出确认对话框的自定义Web服务器控件ConfirmButton 
    作者:活靶子[原创]       出处:AspxBoy.Com 
    经常在论坛里看到类似这样的问题:“…如何在点击删除按钮的时候弹出个确认删除对话框”。下面我们来自己写一个这样的自定义Web服务器控件!思路如下:继承System.Web.UI.WebControls.Button控件增加一个属性“ConfirmMessage”来表示弹出确认框上面的提示信息。在服务器控件呈现在页面之前把一段javascript写到页面内容如下:<script language="JavaScript"><!--function _doAspxBoyConfirm(){return confirm("你确认删除/保存吗??")}//--></script>查一下msdn中对于Control.OnPreRender 方法的描述可以得到“此方法通知服务器控件在保存视图状态和呈现内容之前,执行任何必要的预呈现步骤”.所以我们只要在OnPreRender方法内 用Page.RegisterClientScriptBlock把这段javascript发送到客户端,并且给Button. Attributes属性内添加一个“onclick”的客户端属性对应值为: "return _doAspxBoyConfirm()”.详细情况可以查阅ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/cpref/html/frlrfsystemwebuiwebcontrolswebcontrolclassattributestopic.htm这样一个具有ConFirm功能的Button就基本上建立起来了。新建一个测试该控件的工程在工具箱上点右键选择“添加/移除项”,点击浏览选择编译好的dll文件,点击确定,你会发现ConFirmButton已经添加到工具箱内了将其托到一个Aspx页面内 在属性设置内给ConfirmMessage值为你要的弹出框内容比如“确定删除吗?”,按F5运行。当点该按钮时会弹出一个confirm对话框询问“确定删除吗?”,如果点击确定则执行button的Button_Click事件,如果点击取消则不执行。你可以查看他生成的html代码,以加深对该控件工作原理的理解完整的代码如下:using System;using System.Web.UI;using System.Web.UI.WebControls;using System.ComponentModel;using System.Text;namespace AspxBoy.Com.ConfirmButton{/// <summary>/// Button点击时会弹出一个对话框要求确认/// </summary>public class ConfirmButton : System.Web.UI.WebControls.Button{private string _confirmMessage;/// <summary>/// 当客户端点击此Button时弹出的提示消息筐的内容/// </summary>public string ConfirmMessage{get{return _confirmMessage;}set{_confirmMessage = value;}}protected override void OnPreRender(System.EventArgs e){StringBuilder sb = new StringBuilder();sb.Append("<script language=\"JavaScript\">");sb.Append(System.Environment.NewLine);sb.Append("<!--");sb.Append(System.Environment.NewLine);sb.Append("/*--------------------------------------------");sb.Append(System.Environment.NewLine);sb.Append("ControlName:\t\tAspxBoy.Com.ConfirmButton");sb.Append(System.Environment.NewLine);sb.Append("AuthorName:\t\t\tHuobazi,WuMeibo");sb.Append(System.Environment.NewLine);sb.Append("CopyRight:\t\t\twww.AspxBoy.Com");sb.Append(System.Environment.NewLine);sb.Append("---------------------------------------------*/");sb.Append(System.Environment.NewLine);sb.Append("function _doAspxBoyConfirm()");sb.Append(System.Environment.NewLine);sb.Append("{");sb.Append(System.Environment.NewLine);sb.Append("return confirm(\"");sb.Append(ConfirmMessage);sb.Append("\")");sb.Append(System.Environment.NewLine);sb.Append("}");sb.Append(System.Environment.NewLine);sb.Append("//-->");sb.Append("</script>");Page.RegisterClientScriptBlock("_doAspxBoyConfirm",sb.ToString());this.Attributes.Add("onclick","return _doAspxBoyConfirm()");base.OnPreRender(e);}public override void RenderBeginTag(HtmlTextWriter writer){writer.WriteLine();writer.Write("<!-------------------");writer.Write("AspxBoy.Com.ConfirmButton Start");writer.Write("\tAuthorName: \tHuobazi");writer.WriteLine(" --------------------->");writer.Write("<!-------------------- ");writer.Write("Copyright:2004 Huobazi(www.AspxBoy.com)");writer.Write(" ---------------------");writer.WriteLine(">");base.RenderBeginTag(writer);}public override void RenderEndTag(HtmlTextWriter writer){base.RenderEndTag(writer);writer.WriteLine();writer.Write("<!------------------------------- ");writer.Write("AspxBoy.Com.ConfirmButton End");writer.Write(" --------------------------------");writer.WriteLine(">");writer.WriteLine();}}}