获取GridView中的子控件,看似简单却又有很多需要注意的地方,希望下面这段示例文字能够给大家一些启示和帮助。
HyperLinksubjectHyLink= (HyperLink)GridView1.Rows[i].FindControl("SubjectHyLink");
以上这行代码的实现是,定义了一个网页链接控件subjectHyLink用来捕获GridView中ItemTemplate里面的网页链接控件SubjectHyLink.
=号左边:HyperLinksubjectHyLink
包含了变量类型的定义。
=号右边:(HyperLink)GridView1.Rows[0].FindControl("SubjectHyLink");
包含了一个强类型转换(HyperLink),子控件的获取GridView1.Rows[i].FindControl。
这里要注意如果使用GridView1. FindControl将会出现找到了控件但是不能捕获控件。因为GridView中的行是通过数据绑定动态生成的,因此必须先获取行之后再获取行中需要查找的控件。
如下可以实现动态多行控件属性设置
//循环获取GridView的行数
for (int i = 0; i < this.GridView1.Rows.Count; i++)
{
//获取GridView中的子控件
HyperLink subjectHyLink=(HyperLink)GridView1.Rows[i].FindControl("SubjectHyLink");
//给控件设置属性
subjectHyLink.NavigateUrl =http://www.overmcse.com/openlab;
}
以上是自我总结的一些皮毛,如果有什么不对的地方希望各位大虾批评指正。相信通过这样一行代码,你将对获取类似GridView中的子控件,有一定的认识