© 2026 Hedgehog Software, LLC

TwitterGitHubDiscord
More
CommunitiesDocsAboutTermsPrivacy
Search
Star
Setup for Free
C#C
C#•16mo ago•
11 replies
ClownAcademy

Menu Validation 'char input'

I just asking for some general directions to design a solid input validation for a menu.
It 'works' but I feel like I am using the wrong tools.
I want it to only use a key press, that is fine. The overall come I wrote doesn't feel solid.
        static void Main()
        {
            List<string> fruitList = new List<string>();
            bool IsMenuActive = true;

            while (IsMenuActive)
            {
                //Console.WriteLine("MainMenu\\");
                Console.WriteLine("[1] - Menu1");
                Console.WriteLine("[2] - Menu2");
                Console.WriteLine("[3] - Menu3");
                Console.WriteLine("[4] - Menu4");
                Console.WriteLine();
                ValidKeyPress();
            }




            static char ValidKeyPress()
            {
                
                Console.Write("Choose menu: ");
                char userInput = Console.ReadKey().KeyChar;
                while (!char.IsDigit(userInput))
                {
                    Console.WriteLine();
                    Console.Write("Wrong keypress, try again: ");
                    userInput = Console.ReadKey(true).KeyChar;
                    Console.Write(userInput);
                }

                Console.WriteLine();
                return userInput;



            }
        static void Main()
        {
            List<string> fruitList = new List<string>();
            bool IsMenuActive = true;

            while (IsMenuActive)
            {
                //Console.WriteLine("MainMenu\\");
                Console.WriteLine("[1] - Menu1");
                Console.WriteLine("[2] - Menu2");
                Console.WriteLine("[3] - Menu3");
                Console.WriteLine("[4] - Menu4");
                Console.WriteLine();
                ValidKeyPress();
            }




            static char ValidKeyPress()
            {
                
                Console.Write("Choose menu: ");
                char userInput = Console.ReadKey().KeyChar;
                while (!char.IsDigit(userInput))
                {
                    Console.WriteLine();
                    Console.Write("Wrong keypress, try again: ");
                    userInput = Console.ReadKey(true).KeyChar;
                    Console.Write(userInput);
                }

                Console.WriteLine();
                return userInput;



            }
C# banner
C#Join
We are a programming server aimed at coders discussing everything related to C# (CSharp) and .NET.
61,871Members
Resources

Similar Threads

Was this page helpful?
Recent Announcements

Similar Threads

✅ ✅ Issues With Input Validation
C#CC# / help
3y ago
Char help
C#CC# / help
13mo ago
char.IsLetterOrDigit
C#CC# / help
2y ago