Опция (a) вложилась в пакет UI, который включает souped GridView с этой встроенной функциональностью.
Самокрутка опции (b) - это не просто. У Dino Esposito есть один подход.
Править: Просто замеченный, что ссылки на статью Dino к области только для подписчика на сайте журнала ASPnetPro.
Вот другой подход с помощью расширителей.
Можно сделать это в CSS
Заголовок замораживания: 1. Определите класс.Freezing в Таблице стилей:
.Freezing
{
position:relative ;
top:expression(this.offsetParent.scrollTop);
z-index: 10;
}
2. Присвойте cssClass Заголовка Datagrid Замораживанию
Дайте это, попытка должна решить проблему http://www.codeproject.com/KB/webforms/FreezePaneDatagrid.aspx
Попробуйте этот проект с открытым исходным кодом для ASP.NET. Он расширяет GridView, обеспечивая фиксированный верхний колонтитул, нижний колонтитул и пейджер, а также изменяемую ширину столбца. Хорошо работает в IE 6/7/8, Firefox 3.0 / 3.5, Chrome и Safari.
http://johnsobrepena.blogspot.com/2009/09/exnding-aspnet-gridview-for-fixed.html