这种方法,一般需要在DataGrid的事件中到才能做到,在事件中这样赋值:Label idLabel = (Label)e.Item.FindControl("等于你所要赋的值");

解决方案 »

  1.   

    int index = DataGrid1.Items.Count+1;
    ((DataGridItem)DataGrid1.Controls[0].Controls[index]).FindControl("yourcontrolname")
      

  2.   

    怎样得到Header、Footer、Pager里的控件
    方法一:在ItemCreated或者ItemDataBound中,具体代码就不在多写了
    方法二:遍历DataGrid的所有Item(注意,不是遍历DataGrid1.Items下的Item)
    foreach (DataGridItem item in DataGrid1.Controls[0].Controls)
    {
      if (item.ItemType == ListItemType.Header)
      {
        //用item.FindControl查找相应的控件
      }
    }
      

  3.   

    假定是第一列private void ListDataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    if ( e.Item.ItemType == ListItemType.Footer )
    {
    ( ( label ) e.Item.Cells[1].FindControl("label1") ).Text = "xxx"
    }
    }