1

我的问题是:

我有一个 GridView,它包含一个列(按钮字段)。现在我想在运行时知道我的 Grid 是否包含 Button 字段。

 foreach (DataColumn col in Table.Columns)
                {
                    ButtonField btnfield = new ButtonField();
                    btnfield.ButtonType = ButtonType.Image;

                    if (grid.Columns.Contains(btnfield))
                    {
                        grid.Columns.RemoveAt(grid.Columns.IndexOf(btnfield));
                    }

                }

此代码不起作用。我想在没有行数据绑定的情况下完成这项任务。

问候祖海布

4

1 回答 1

1

如果我在这里得到您的问题,那么您要做的是:

foreach (GridViewRow row in YourGridView.Rows)
{
    //This should get the control in the cell, you could use FindControl too.
    Control ctrl = row.Cells[columnIndex].Controls[0];
    //Check the control type
    if (ctrl.GetType() == typeof(ButtonField))
    {
    }
}
于 2012-04-26T11:59:54.713 回答