了解:
为了更好地理解,发生了一些类似的事情。 (在上述步骤之后)
if (Goal.GoalStatusGainWeight == true && Console.ReadLine() == "y")
{
Console.Clear();
InitFiveByFive();
//Caluclate Calories based on Gender and Goal
GainWeight.ShowFoodsToGainWeight();
Nutrition.CalcuateCalories();
ExitToMenu();
}
这是我的问题所在:
private static void ExitToMenu()
{
Console.WriteLine("PRESS ESC To Return to the MENU");
var input = Console.ReadKey();
if (input.Key == ConsoleKey.Escape)
{
Console.Clear();
InitMenu();
}
}
问题是当我返回菜单时。然后再次输入一些东西。
do
{
var userInput = Console.ReadKey();
try
{
switch (userInput.Key)
{
case ConsoleKey.D1:
Console.Clear();
InitUser();
InitGoals();
Stats.ShowStats = true;
Menu.ShowMenu = false;
break;
case ConsoleKey.D2:
Console.Clear();
Menu.Disclamer();
Menu.ShowMenu = true;
Menu.ShowDiscalmer = true;
break;
case ConsoleKey.D3:
Console.Clear();
Menu.MadeBy();
break;
default:
Console.Clear();
InitMenu();
break;
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
throw;
}
if (Menu.ShowMenu == false)
{
Menu.MenuOnOff = false;
}
} while (Menu.MenuOnOff == true);
不会再次接受输入。我不确定如何处理这种情况。
用户存在“锻炼计划”并返回菜单后,我尝试再次按1,(case ConsoleKey.D1:
)我的控制台应用程序刚刚关闭。
希望我能得到您需要的一切,如果有什么遗漏,请告诉我。
谢谢。