再谈如何遍历Asp.net窗体下所有的控件

这个问题在论坛上的提问比较频繁的,这里总结一下几种方法,希望对没用过的朋友有所帮助^_^。
高手就不用看了

方法一:

 1

稍后继续其他的:)
作者:TerryLee
出处:http://terrylee.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted @ 2005-10-09 13:04 TerryLee 阅读(842) 评论(4)  编辑 收藏 网摘

  回复  引用  查看    
#1楼 2005-10-09 13:24 | zfphere      
如果是 DataGrid 嵌套了CheckBox,PlaceHolder 加载了UserControl呢??
  回复  引用  查看    
#2楼 [楼主]2005-10-09 14:01 | Terrylee      
有DataGrid的时候,原理是一样,只不过要考虑到遍历的效率问题了。
 if(control is DataGrid)
     {
      foreach(Control ct in control.Controls)
      {
       if(ct is CheckBox) 
       {
        //……
       }
      }
     }

见站长的《递归的妙用—遍历子控件 》:
http://www.cnblogs.com/dudu/archive/2004/09/10/41655.html

  回复  引用  查看    
#3楼 2006-01-10 22:02 | zfphere      
其实我想表达的也就是通过递归的方式来实现遍历。Page类对每个请求所生成的页面也是通过类似的递归来实现^_^
  回复  引用  查看    
#4楼 2007-05-02 18:21 | Hafeyang      
能否保证遍历所有的控件?
我的页面有
this.HyberLink1~this.Hyberlink7
可以用this.HyberLink1直接访问
但我想用这种方法遍历去实现它们的初始化
但是始终不行
我的页面使用了MasterPage
与这个有没有关系?
或者是不是有个深度的问题
比如页面的深度为2才使用上述方法
请高手指教




标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
Google站内搜索

相关文章:

相关链接: