我自己写了个函数解决了
谢谢
function TForm1.GetFieldName(ColumnName: string): string;
var
i: Integer;
begin
for i := 0 to mylist.Columns.Count - 1 do
if mylist.Columns[i].Caption = ColumnName then
break;
if mylist.Selected <> nil then
Result := mylist.Selected.SubItems[i - 1];
end;