DataGrid的模板列能不能控制隐藏呢????
我想控制一下DataGrid的模板列,当满足条件就显示,不满足条件就不显示出来,我想问一下怎么控制
DataGrid的模板列呢?前台部分代码:<asp:TemplateColumn HeaderText="代預定是否確認">
<HeaderTemplate>
<FONT face="宋体">代預定是否確認</FONT>
</HeaderTemplate>
<ItemTemplate>
<FONT face="宋体">
<asp:CheckBox id="cb_book" runat="server"></asp:CheckBox></FONT>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText=" 保存">
<HeaderTemplate>
<P><FONT face="宋体">保存</FONT></P>
</HeaderTemplate>
<ItemTemplate>
<FONT face="宋体">
<asp:LinkButton id="lbtn_save" runat="server">保存</asp:LinkButton></FONT>
</ItemTemplate>
**********************************************
是在前台写还是在后台写????在线等待

解决方案 »

  1.   

    是不是应该这样做呢?
    this.dg_query.Columns[16].Visible=false;
      

  2.   

    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
    int ItemSum=DataGrid1.Columns.Count-2;
    if(条件符合)
    {

    e.Item.Cells[ItemSum].Visible=true;
    }
    else
    {
    e.Item.Cells[ItemSum].Visible=false;
    }  
    }
      

  3.   

    在后台可以在想控件模块列的时候调用以下函数(假设你的DataGrid的ID是DataGrid1):
    public void SetTemplateColumn(bool bFlag)
    {
     foreach(DataGridColumn dgc in DataGrid1.Columns)
     {
        if( dgc.ColumnName.HeaderText=="代預定是否確認" )
           dgc.Visible =bFlag;   
     }
    }
      

  4.   

    我想请教一下:
    int ItemSum=DataGrid1.Columns.Count-2;
    Count-2 是什么意思啊
      

  5.   

    int ItemSum=DataGrid1.Columns.Count-2;
    这个应该是他项目中所针对的.
      

  6.   

    DataGrid1.Columns.Count 返回列的总数(项目总数)