2
Answers

Console.ReadKey

Maha

Maha

11y
2.6k
1
This program is given in following website.
http://www.dotnetperls.com/console-readkey

This new code (info.KeyChar == 'X') instead of (info.Key == ConsoleKey.X) is giving different last line output. Please explain the reason. Code is highlighted.

using System;
class Program
{
static void Main()
{
Console.WriteLine("... Press escape, a, then control X");
// Call ReadKey method and store result in local variable.
// ... Then test the result for escape.

ConsoleKeyInfo info = Console.ReadKey();

if (info.Key == ConsoleKey.Escape)
{
Console.WriteLine("You pressed escape!");
}

// Call ReadKey again and test for the letter a.
info = Console.ReadKey();

if (info.KeyChar == 'a')
{
Console.WriteLine("You pressed a");
}

// Call ReadKey again and test for control-X.
// ... This implements a shortcut sequence.
info = Console.ReadKey();

if (info.Key == ConsoleKey.X && info.Modifiers == ConsoleModifiers.Control)
{
Console.WriteLine("You pressed control X");
}
Console.Read();
}
}
/*
... Press escape, a, then control X
?You pressed escape!
aYou pressed a
?You pressed control X
*/

Answers (2)
Next Recommended Forum