DataGrid自动绑定,但是我想让第一列隐藏怎么办? 能不能在页面用javascript把第一列隐藏?

解决方案 »

  1.   

    grid.DataBind();
    grid.Columns[0].Visible = false;
      

  2.   

    楼上这个也不行,这个是自动绑定的,所以在DataBind()之后捕捉到的Columns是空的,所以
    grid.Columns[0].Visible = false;
    这一句执行一定报错~
      

  3.   

    直接設置該列的Visible屬性為false,就好了
      

  4.   

    <asp:TemplateField Visible="false">
                                <ItemTemplate>
                                    <asp:Label ID="LabelName" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "LabelName") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
      

  5.   


    grid.Columns[0].Visible = false;
    grid.DataBind();
      

  6.   

    void BindGrid(string checkStatus)
    {
    EngCheckLog Exec = new EngCheckLog();
    dg_Eng.DataSource = Exec.GetEngineeringByStatus(checkStatus,currentPage);
    if (checkStatus=="Pass")//等待审核
    {
    //SetPassLinkUrl(); 
    // dg_Eng.Columns[1].Visible = false;
    // dg_Eng.Columns[2].Visible = true;
    dg_Eng.Columns[2].Visible = false;
    dg_Eng.Columns[3].Visible = true; }
    else  //已经审核
    {
    //SetLinkUrl();
    // dg_Eng.Columns[1].Visible = false;
    // dg_Eng.Columns[2].Visible = true;
    dg_Eng.Columns[2].Visible = false;
    dg_Eng.Columns[3].Visible = true;
    }
    if (checkStatus=="Wait")//等待审核
    {
    //
    // dg_Eng.Columns[4].HeaderText ="提交时间";
    // ((BoundColumn)dg_Eng.Columns[4]).DataField= "Created_Date";   
    dg_Eng.Columns[5].HeaderText ="提交时间";
    ((BoundColumn)dg_Eng.Columns[5]).DataField= "Created_Date";  
    }
    else  //已经审核
    {
    // dg_Eng.Columns[4].HeaderText ="审核时间";
    // ((BoundColumn)dg_Eng.Columns[4]).DataField= "CheckDate";
    dg_Eng.Columns[5].HeaderText ="审核时间";
    ((BoundColumn)dg_Eng.Columns[5]).DataField= "CheckDate";
    } dg_Eng.DataKeyField = "EngID";
    dg_Eng.DataBind();

    } }
      

  7.   

    帮忙http://community.csdn.net/Expert/topic/4999/4999993.xml?temp=.1140558