Hola!
mmm... suena un tanto extraño tantos problemas para ocultar una columna...
El título del mensaje es: Ocultar columna en DataGrid ASP 2.0
Por qué no usan un GridView? Tengo más experiencia con este, a parte que lo veo como una evolución del anterior datagrid (que era mucho mas problemático).
Con este control, haciendo todo en tiempo de ejecución, os puedo decir que esto funciona:
Código:
objDataGrid.DataSource = tbDatos; //Es un DataTable
objDataGrid.DataBind();
objDataGrid.Columns[2].Visible = false;
//Incluso esto funciona, impensable en el anterior datagrid:
//objDataGrid.Columns["Nombre"].Visible = false;
Saludos.