ghx88

历遍Page的Controls集合

   foreach(Control ctl in Page.Controls)
   {
      Response.Write("<li>"+ctl.ToString());
   }
   上述代码并不显示包含在页面内的所有控件列表,它只显示Page类的直接子控件,而不再显示这些子控件的任何子控件。如果要显示页面内的所有控件,就可以递归地遍历每个控件的Controls集合,如:


public void displayCtl(Control ctl)
{
    foreach(Control subCtl in ctl.Controls)
    {
       Response.Write("<li>"+subCtl.ToString);
       displayCtl(subCtl);   //历遍子控件中的子控件。
    }
}
private Button1_Click(object sender,EventArgs e)
{
    displayCtl(Page);  //Page其实也是一个控件。
}

posted on 2005-03-26 09:49  ghx88  阅读(293)  评论(0)    收藏  举报

导航