Сортировка столбцов TListView

У меня есть TListview с 4 столбцами (которые, конечно, все строки), однако я храню данные в них как таковые:

Caption: любая строка

SubItems[0]целое число, например'5016'

SubItems[1]дата, например'03/22/13'

Subitems[2]: любая строка

Я использую следующий код для сортировки, когда пользователь щелкает заголовок Coolumn

Я смотрел на этот посткак сортировать в Tlistview на основе подпункта [x] " Но я могу't выяснить, как принимать во внимание различные типы столбцов.

procedure TfrmFind.lvwTagsColumnClick(Sender: TObject; Column: TListColumn);
begin
 ColumnToSort := Column.Index;
 (Sender as TCustomListView).AlphaSort;
end;

procedure TfrmFind.lvwTagsCompare(Sender: TObject; Item1, Item2: TListItem;
  Data: Integer; var Compare: Integer);
var
 ix: Integer;
 begin
 if ColumnToSort = 0 then
 Compare := CompareText(Item1.Caption,Item2.Caption)
 else begin
 ix := ColumnToSort - 1;
 Compare := CompareText(Item1.SubItems[ix],Item2.SubItems[ix]);
 end;
end;

Как я могу принять во внимание столбцы Integer и Date, чтобы они не сортировались как строки?

Thankx

Ответы на вопрос(1)

Ваш ответ на вопрос