如何判断一个datagrid的列是 绑定列还是模版列?

解决方案 »

  1.   

    在代碼中用 GetType()來判斷,如:
    Dim dg As DataGridColumn
    For Each dg In Me.DataGrid1.Columns
          Response.Write(dg.GetType().ToString & "<br>")
    Next
      

  2.   

    GetType()在c#中得到的是System.Web.UI.WebControls.DataGridColumnCollection这个类型,我想得到的是具体的,比如BoundColumn,TemplateColumn这样的值,不知道可以吗?因为我想在程序里动态获取一个dagagrid的值,如果这一列是BoundColumn,我就用datagrid.item[i].cells[j].text来获取值,如果是TemplateColumn,我就用实例化控件的方法来获取值,所以列的类型必须要判断!期待中!!
      

  3.   

    怎么个动态法,事先你不知道这个datagrid有几列吗?
    如果模板列只放一个Label控件的话,用datagrid.item[i].cells[j].controls[0].text来获取
    这样的话不论是模板列还是绑定列都能找到
      

  4.   

    foreach(DataGridColumn  dc in dgaskprice.Columns)
    {
                 if (dc is BoundColumn) 
                {}
       
        if (dc is TemplateColumn )
                 //模板列
       {}  
    }
      

  5.   

    GetType()可以得到System.Web.UI.WebControls.TemplateColumn 这样的列类型,我试了的。