Dlaczego tak
Metoda Show() otwiera okno niemodalne: kod wraca od razu, a użytkownik może przełączać się między oknem „Znajdź” i oknem głównym. ShowDialog() otwiera okno modalne – blokuje okno właściciela i zwraca wynik dopiero po zamknięciu dialogu, czego tu nie chcemy. MessageBox.Show wyświetla modalny komunikat zamiast okna wyszukiwania, a Activate() jedynie przenosi na wierzch okno, które zostało już otwarte.