日期:2014-05-18  浏览次数:20467 次

关于页面控件集合的问题 在线。。马上结贴!
我这样循环页面控件
foreach   (System.Web.UI.Control   control   in   this.Controls[1].Controls)
                                {
                                        colName   =   control.ClientID;
                                        if   (colName.IndexOf(preId)   !=   -1)
                                        {
                                                colName   =   colName.Replace(preId,   " ");
                                                //都变成小写
                                                colName   =   colName.ToLower();
                                                //colName=colName.Replace( "_ ", " ");

                                                if   (col.ColumnName   ==   colName)
                                                {
                                                        flag   =   1;
                                                        break;
                                                }
                                        }
                                }
出现的问题:有时候用this.Controls[1].Controls.Count   并不能得到我想要的页面上真正的所有控件,而用this.Controls[2].Controls.Count   或者   this.Controls[3].Controls.Count....才能得到
假设index最大数为10;   Controls[index].Count   得到最大控件数。   那么我怎么得到最大控件数时index值呢?注:两个索引间的Count值有可能相等;

------解决方案--------------------
遍历页面的所有控件

int len = Form.Controls.Count;
for (int i = 0; i < len; i++)
{
Response.Write(Form.Controls[i].ClientID);
}
------解决方案--------------------
使用遍历,在CSDN上搜索下遍历