Anyway to check and see if this "id" actually contains a GUID. Sometimes the ID holds ";nbsp" and code fails.
if (e.Item is GridEditableItem)
GridEditableItem editedItem = e.Item as GridEditableItem;
string id = editedItem["Id"].Text;
Basket basket = Basket.Items.FindById(new Guid(id)); //**fails here if ID is not GUID