<form id="form1" runat="server">
...
</form>server code:void Page_Load(Object o, EventArgs e)
{
string slist = "aa,ss,dd";
foreach (string s in slist.Split(','))
{
  LinkButton lb = new LinkButton();
  lb.Text = s;
  form1.Controls.Add(lb);
}
}

解决方案 »

  1.   

    string str = "aa,ss,dd";
    string st[] = str.split(str);for(int i = 1; i<st.Length; i++)
    {
      HylinkButton hb = new HyLinkButton(st[i]);
      hb.Url = yoururl;
    }
      

  2.   

    请教:saucer(思归)出现错误提示:
    error CS0120: 非静态的字段、方法或属性“System.Web.UI.Control.Controls”要求对象引用.不知如何处理?
      

  3.   

    did you declare 
    <form id="form1" runat="server">???
    if you are using codebehind, declare in your classprotected HtmlForm form1;
      

  4.   

    saucer(思归) :你好,我改为 Page.Controls.Add(lb);则可用form的id报错,同时改后页面报错是:类型“LinkButton”的控件“_ctl0”必须放在具有 runat=server 的窗体标记内。可是我的页面代码<form id="AutoAddButton" runat="server">有.所以我在页面中加了<asp:Panel id="Panel1"runat="server" asp:Panel>改代码为Panel1.Controls.Add(lb);才无误运行正常.我想请教有不加Panel,改上处错误的方法吗?