Я не могу ответить, ПОЧЕМУ это происходило, но решение, которое работает для меня, это привязать сетку к ObjectDataSource.
<asp:ObjectDataSource ID="gridData" runat="server"/>
Я уже связывал сетку со свойством на странице, которое представляло собой коллекцию типа List:
protected List<EquipmentGridItem> GridItems { get; set; }
Чтобы использовать ObjectDataSource, я создал метод-обертку для возврата списка.
public object GetGridData()
{
return GridItems;
}
Затем я привязал сетку к источнику данных объекта.
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
grdUnits.DataSourceID = "gridData";
gridData.TypeName = typeof (ReservationEdit).ToString();
gridData.SelectMethod = "GetGridData";
}
Вид извилистого решения, но оно работает.