Hola Christian,
Y que más te da que sea un if o un switch, estructura de tenedor de una u otra forma. Y que tiene que ver esto con los eventos, donde están los eventos ?.
Mad Code,
El problema lo tienes en el planteamiento del bucle y en utilizar ReadKey() eso espera hasta que se pulsa una tecla y tu lo que quieres es que el usuario seleccione las opciones.
Mira este código
publicclass ConsoleControl {publicvoid GetEncuesta() {string Exit = string.Empty; CrearEncuesta();while (Exit!="0") { int Resultado = 0;if (int.TryParse(Exit,out Resultado)) {switch (Resultado) {case 1: Console.WriteLine("Pulsaste Hola");break;case 2: Console.WriteLine("Pulsaste Adios");break;case 3: Console.Clear(); CrearEncuesta();break; } } Console.Write("escriba una opción: "); Exit = Console.ReadLine(); } }privatevoid CrearEncuesta() { Console.WriteLine("1.Hola"); Console.WriteLine("2.Adios"); Console.WriteLine("3.Nueva Encuesta"); Console.WriteLine("0.Salir"); }
Después lo puedes llamar desde el Main de esta forma.
class Program {staticvoid Main(string[] args) { ConsoleControl ctl = new ConsoleControl(); ctl.GetEncuesta(); } }
Adapta esa estructura de bucle a tu código y acuérdate de utilizar int.TryParse int.Parse falla si el usuario introduce cualquier valor no numérico.
Saludos,
phurtado