<asp:BoundColumn Visible="False" HeaderText="1"></asp:BoundColumn>
<asp:BoundColumn DataField="Explain" HeaderText="2"></asp:BoundColumn>
<asp:BoundColumn DataField="LimitCondition" HeaderText="3"></asp:BoundColumn>
<asp:BoundColumn DataField="BillSource" HeaderText="4"></asp:BoundColumn>
<asp:BoundColumn Visible="False" HeaderText="5"></asp:BoundColumn>
<asp:HyperLinkColumn Text="6" HeaderText="7"></asp:HyperLinkColumn>正常来说里面是有6列的,但显示出来的只有4列,其中2列是隐藏的.
问题是,如何C#程序统计出当前显示的列数?

解决方案 »

  1.   

    遍历一下好了int i = 0;
    foreach (DataControlField c in DataGrid1.Columns)
        if (c.Visible == true)
            i++;
    Response.Write(i);
      

  2.   

    全部列用这个:
    DataGrid.Item.Cells.Count
    只统计可见列的话,楼上的很对。呵呵
      

  3.   

    全部列不用.那个有直接的方法.
    DataControlField 应该是在2.0里面才有的吧.
    1.1用DataGridColumn可以吗?
      

  4.   

    OK,解决. 1.1应该是这样的.int i = 0;
    foreach (DataGridColumn c in WTList.Columns)
    {
    if (c.Visible == true)
    i++;
    }