Der Weg über OnDblClick ist völlig richtig. Wäre gut gewesen, wenn du noch etwas Code gezeigt hättest. Richtig müsste es die IF-Abfrage so sein:
Delphi-Quellcode:
if ListView1.Selected <> nil then
begin
// mache was
end;
Für das Enter müsstest du OnKeyPress abfangen und den Parameter Key auf #13 überprüfen.
P.S: Es gibt keine IF-Schleifen
Wenn dann sind es IF-Bedingungen oder IF-Abfragen.