может пойти на объявление Items свойством-массивом типа TRec ?
(тогда хотя старое Items.Strings будет недоступно, все равно будем пользоваться
списком как массивом.) Хотелось бы еще чтобы при добавлении/удалении
сохранялись визуальные свойства нового списка
Не прокатит. Если тебе надо получить свойство-список, члены которого имеют тип TRec, то создай свой класс на базе к примеру TList или TObjectList, элементами которого будут объекты типа TRec. А затем уже переопределяй свойство Items своим классом-списком.