Не работает выход из программы по нажатию кнопки

Пишу небольшой генератор паролей в консольной мультипрограммке. Пытаюсь сделать так что бы в любой момент при нажатии клавиши, в моем случае ESC - происходил выход и возврат на стартовое меню.

Но что-то не работает.

else if (keyInfo.KeyChar == 'y')
                {
                    Console.Clear();
                    try
                    {
                        ConsoleKeyInfo btn;
                        do
                        {
                            //...
                            btn = Console.ReadKey();
                            Console.Clear();
                            string buffer = "qwertyuiopasdfghjklzxcvbnm1234567890QWERTYUIOPASDFGHJKLZXCVBNM";
                            Console.WriteLine("Количество символов в пароле: ");
                            int ko = Convert.ToInt32(Console.ReadLine());
                            string result = "";

                            Random rnd = new Random();
                            int lng = buffer.Length;

                            for (int i = 0; i < ko; i++)
                            {
                                result += buffer[rnd.Next(lng)];
                            }

                            Console.WriteLine("Создан пароль # " + result);
                        }

                        while (btn.Key != ConsoleKey.Escape);
                    }
                    catch
                    {
                        Console.WriteLine("Вы сделали что-то неправильно! Возращайтесь в меню!");
                        Thread.Sleep(5000);
                    }
                    finally
                    {
                        
                    }

Ответы (0 шт):