.net中的母版页中使用FindControl的使用

前几天,遇到一个字段比较多的用户填写的页面(数据表就将近100个字段),怎么将这些input的标签的值保存到数据库了?(使用的是母版页下面的aspx,不包括前端获取input的值,传给后台)

作为一个天生喜欢偷懒的程序员总想着办法来偷懒,就想在aspx.cs中,找到所有的input循环遍历获取他们的值。一开始直接使用下面代码

1 var controls=this.Page.Controls;//获取该页面的控件
2 foreach(var ctr in controls){
3 if(ctr is HtmlInputText){
4 var input=(HtmlInputText)ctr;//获取到该input
5 }
6 }

发现上面的controls只两个记录数,这是为啥啊?我页面上面将近一百个字段,为啥只有两个?

百度各种方法,发现母版页下,使用this.Master.FindControl("Mainwork").Controls;//母版页下面功能区域的ID,然后下面的所有控件,就直接可以使用了

 之后我发现,代码就是让自己开发更简单的一种方式,偷懒的程序员反而会使自己更进步

原文地址:https://www.cnblogs.com/huage-1234/p/7467345.html