在注册页面中,为了重置页面上所有的控件,编写了页面中重置按钮的单击事件

protected void btnReset_Click(object sender, EventArgs e)
{
Label2.Text="your hobby:";
//将CheckBoxList1中选中的内容呈现在标签Label2中。
for(int i=0;i<CheckBoxList1.Items.Count;i++)
{
if (CheckBoxList1.Items[i].Selected == true)
Label2.Text += "<br/>"+CheckBoxList1.Items[i].Value;
}
//遍历form1窗体中的所有控件,实现内容清空。
foreach (Control c in this.FindControl("form1").Controls)
{
if (c is TextBox)
{    ((TextBox)c).Text = "";   }
}

今天在上完母版页内容后,当将注册页面应用到设计好的母版页后,执行过程中提示:
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。
错误行代码为:foreach (Control c in this.FindControl("form1").Controls)
这说明在引入母版页的机制后,放在ContenPlaceHolder1内容页中的控件使用Page.FindControl方法无法找到。
MSDN对FindControl的解释:在当前的命名容器中搜索带指定 id 参数的服务器控件。
FindControl方法是在当前naming container查找指定ControlID对应的控件,该naming container是一个实现了INamingContainer接口的对象。
可以在该页的页指令中添加 Trace=Ture 指令来跟踪页面输出查看控件树。对页面启用跟踪,在控件树中可以看到内容页中所有控件的naming container为ContentPlaceHolder1。因此将上述查找控件的代码改写成:

this.Page.Master.FindControl("ContentPlaceHolder1").Controls

再运行,一切又恢复正常。

若要查找ID值为“TextBox1”的控件则代码如下:

this.Page.Master.FindControl("ContentPlaceHolder1").FindControl("TextBox1")

转载于:https://www.cnblogs.com/wifi/articles/2593205.html

使用母版页后出现控件,使用FindControl找不到指定控件相关推荐

  1. Page.FindControl方法找不到指定控件的原因

    在ASP.NET 2.0中,引入了MasterPage的机制,在当前页使用MasterPage的情况下,放在 ContentPlaceholder1这样的内容页的控件无法用Page.FindContr ...

  2. asp.net findcontrol html控件,c# – FindControl找不到控件

    我正在设置gridview,以便我可以选择多个事件并将其EventID添加到逗号分隔的字符串中.这将是一个订阅服务,所以我需要知道用户想要订阅哪些事件. 我使用模板字段添加一个Checkbox,我可以 ...

  3. python idle运行显示找不到指定文件_Robotframework ride ,运行后提示, [WinError 2] 系统找不到指定的文件。...

    CMake学习笔记 C++开发者必备技能CMake  先简单介绍一下,CMake是一个跨平台的编译工具,它可以根据不用的平台,不同的编译环境,生成不同的MakeFile,从而控制编译的过程. 使用CM ...

  4. [习题].FindControl()方法 与 PlaceHolder控件 #2(动态加入「子控件」的事件)

    这是我的文章备份,有空请到我的网站走走, http://www.dotblogs.com.tw/mis2000lab/ 才能掌握我提供的第一手信息,谢谢您. http://www.dotblogs.c ...

  5. [转] WinForm自定义函数FindControl实现按名称查找控件

    原文地址 WinForm自定义函数FindControl实现按名称查找控件 本文所述实例实现WinForm自定义函数FindControl实现按名称查找控件的功能,在C#程序开发中有一定的实用价值. ...

  6. 引用asp.net母版页后,母版页和内容页的页面事件执行顺序

    如下,经测试得到的执行步骤: 第01步.内容页的 Page_PreInit 第02步.母版页的 Page_Init 第03步.内容页的 Page_Init 第04步.内容页的 Page_InitCom ...

  7. 【ASP.NET】第八课——GridView 控件的编辑功能优化,GridView控件中嵌套DropDownList控件

    知识点:掌握 GridView 的编辑.高亮显示的功能 .GridView控件中嵌套DropDownList控件获取数据源. [ASP.NET]第七课--数据绑定和 GridView 控件的使用 重点 ...

  8. 判断鼠标不在控件上_基础设施:一套基本控件

    类可以把需要重复使用的代码封装到一起多次使用, 但这样的代码仍不能被不同的程序使用. 把自己常用的代码编到一起,打包成库的话,就能制成一套自用工具库作为基础设施. 这里常用的部分,首先就是界面控件. ...

  9. 在Repeater控件,Repeater1控件中都有FooterTemplate模板.但你在后台中如何去找FooterTemplate中的控件呢?...

    在Repeater控件,Repeater1控件中都有FooterTemplate模板.但你在后台中如何去找FooterTemplate中的控件呢? 如.<FooterTemplate>   ...

最新文章

  1. MATLAB 多项式
  2. php 简单的解密和加密
  3. NTU 课程笔记13:线性规划(对偶性)
  4. SQL语法之排序查询(进阶3)and常见函数(进阶4)
  5. linux服务器上部署项目,还报路径错误,切记分隔符注意点
  6. boost::phoenix::if_相关的测试程序
  7. 第二阶段冲刺第四天(6月3号)
  8. vue赋值成功后再回调_vue 回调赋值?
  9. 实现多租户系统的一点思考
  10. C++智能指针(三)总结
  11. GJM: Unity3D基于Socket通讯例子 [转载]
  12. 天线发射功率计算公式_天线基本知识及应用―链路及空间无线传播损耗计算
  13. 插入网站连接_网站开发与网页制作
  14. 谷歌翻译,一键复活脚本
  15. QR码和PDF417比较
  16. Android ConstraintLayout布局详解
  17. C语言笔记——一些小细节
  18. android 按钮果冻效果,用Tween动画简单模拟果冻按钮效果
  19. 菜菜的sklearn机器学习实战——全部课件
  20. MIT新任女校长震撼北美高校圈!61岁的她曾是杜克首位女教务长

热门文章

  1. PostgreSQL专题
  2. PYTHON编程导论群问题汇总(四)
  3. CVPR 2022|MPViT:用于密集预测的多路径视觉Transformer
  4. 北大校友“炼丹”分享:OpenAI如何训练千亿级模型?
  5. 任天堂遭史上最严重黑客攻击:完整源代码、设计文档及技术演示泄露
  6. 分布式任务调度系统V1
  7. 用户管理之用户的查询获取
  8. python判断一个数是整数、浮点数还是字符串
  9. dev编译器:c++如何让其输出小数16.84,浮点数类型数据!
  10. 基于Pytorch的从零开始的目标检测 | 附源码