Export (0) Print
Expand All

ConsoleKeyInfo.Modifiers Property

Gets a bitwise combination of System.ConsoleModifiers values that specifies one or more modifier keys pressed simultaneously with the console key.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

public ConsoleModifiers Modifiers { get; }

Property Value

Type: System.ConsoleModifiers
A bitwise combination of the enumeration values. There is no default value.

The following example demonstrates using a Modifiers property in a read operation.

using System;

class Example 
{
   public static void Main() 
   {
      ConsoleKeyInfo cki;
      // Prevent example from ending if CTL+C is pressed.
      Console.TreatControlCAsInput = true;

      Console.WriteLine("Press any combination of CTL, ALT, and SHIFT, and a console key.");
      Console.WriteLine("Press the Escape (Esc) key to quit: \n");
      do 
      {
         cki = Console.ReadKey();
         Console.Write(" --- You pressed ");
         if((cki.Modifiers & ConsoleModifiers.Alt) != 0) Console.Write("ALT+");
         if((cki.Modifiers & ConsoleModifiers.Shift) != 0) Console.Write("SHIFT+");
         if((cki.Modifiers & ConsoleModifiers.Control) != 0) Console.Write("CTL+");
         Console.WriteLine(cki.Key.ToString());
       } while (cki.Key != ConsoleKey.Escape);
    }
}
// This example displays output similar to the following: 
//       Press any combination of CTL, ALT, and SHIFT, and a console key. 
//       Press the Escape (Esc) key to quit: 
//        
//       a --- You pressed A  
//       k --- You pressed ALT+K  
//       ► --- You pressed CTL+P  
//         --- You pressed RightArrow  
//       R --- You pressed SHIFT+R  
//                --- You pressed CTL+I  
//       j --- You pressed ALT+J  
//       O --- You pressed SHIFT+O  
//       § --- You pressed CTL+U 

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
Show:
© 2015 Microsoft