访问AutoGenerated GridView的所有列 - ASP.NET

时间:2011-08-04 11:53:03

标签: c# asp.net gridview autogeneratecolumn

我有一个带有AutoGenerate的简单Gridview。我需要知道如何访问这些列,因为列数始终为零,即使它们显示在页面中。

我发现了一些关于“AutoGeneratingColumn”事件的内容,但这是针对DataGrids的,并且一次只能访问一列。

基本上我需要使用agrinei的GridViewHelper对行进行分组。

什么行不通:

DataBound 事件, PreRender 事件, RowCreated 事件(因为我需要所有列)和加载事件

3 个答案:

答案 0 :(得分:3)

您发现,自动生成的列不会显示在Columns集合by design中。我没有尝试过这个,但here's an article about subclassing the Gridview并将其自动生成的列添加到Columns集合中。可能会帮助你。

答案 1 :(得分:2)

与patmortech的文章一起,我建议使用this article,因为你使用的是ASP.NET。

答案 2 :(得分:0)

使用此

    Table table = new Table();
    table.GridLines = GridView1.GridLines;
    table.Rows.Add(GridView1.HeaderRow);
    foreach (GridViewRow gvr in GridView1.Rows)
    {
        table.Rows.Add(gvr);

    }
    for (int iRows = 0; iRows < table.Rows.Count; iRows++)
    {
        for (int iCells = 0; iCells < table.Rows[iRows].Cells.Count; iCells++)
        {
            //code here
        }
    }