博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

FindControl的作用

Posted on 2007-01-03 13:27  豆丁不想长大  阅读(1112)  评论(0)    收藏  举报
FindControl为我们提供了可以在C#文件中动态控制DataGrid,DataList中ItemTemplate里面的控件,甚至可是实现控件中嵌套一个控件。用好FindControl可以省去在aspx文件中使用比如<%# GetUpdateToProductName((int)(((DataRowView)Container.DataItem)["updateToProductID"]))%>这样来读取数据的麻烦。
先申明控件,然后使用,很是方便。 

<%# GetUpdateToProductName((int)(((DataRowView)Container.DataItem)["updateToProductID"]))%>
 1 HyperLink hy2 = (HyperLink)this.DataGrid1.Items[i].FindControl("Title");  
 2       hy2.NavigateUrl = dt.Rows[i]["ProjectUrl"].ToString(); 
 3       hy2.Text = dt.Rows[i]["ProjectTitle"].ToString(); 
 4       Label lb6 = (Label)this.DataGrid1.Items[i].FindControl("Desc"); 
 5       Label lb7 = (Label)this.DataGrid1.Items[i].FindControl("Induc"); 
 6       Label lb8 = (Label)this.DataGrid1.Items[i].FindControl("SUsed"); 
 7       lb6.Text = dt.Rows[i]["ProjectDescription"].ToString(); 
 8       lb7.Text = dt.Rows[i]["Industry"].ToString(); 
 9       lb8.Text = dt.Rows[i]["UsedProduct"].ToString();  
10        
11       System.Web.UI.WebControls.Image images = (System.Web.UI.WebControls.Image)this.DataGrid1.Items[i].FindControl("Image1"); 
12       images.ImageUrl = dt.Rows[i]["CasePicture"].ToString(); 
13 
<%# GetUpdateToProductName((int)(((DataRowView)Container.DataItem)["updateToProductID"]))%>