如:
<asp:BoundField DataField="p003_02" HeaderText="userid" visible="false"><itemstyle Width="10"/></asp:boundfield>後台:
void setEditStatus()
{
  GridViewRow crow=gv1.SelectedRow;
  if(gv1.SelectedRow!=null)
  {   
    string author=crow.Cells[0].Text;//這裡取不到值,是空的
    if(author!=User.Identity.Name)
    {
      //detailsView1.Fields[5].Visible=false;
  //((CommandField)detailsView1.Fields[5]).ShowEditButton=false;   
    }
  }
}謝謝!

解决方案 »

  1.   

    在其中一个绑定列中加入下面代码,然后使用FindControl查找这个控件.
    <asp:lable ruant='server' id='userid' text='<%#DataBinder.Eval(Container.DataItem,"p003_02")' visible='false'/></asp:lable>void setEditStatus() 

      GridViewRow crow=gv1.SelectedRow; 
      if(gv1.SelectedRow!=null) 
      {    
        Label uid=(Label)crow.FindControl("userid");//這裡取不到值,是空的 
        if(uid.Text!=User.Identity.Name) 
        { 
          //detailsView1.Fields[5].Visible=false; 
      //((CommandField)detailsView1.Fields[5]).ShowEditButton=false;    
        } 
      }