Console.ForegroundColor Proprietà

Definizione

Ottiene o imposta il colore di primo piano della console.

[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static ConsoleColor ForegroundColor { get; set; }
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("ios")]
[System.Runtime.Versioning.UnsupportedOSPlatform("tvos")]
public static ConsoleColor ForegroundColor { get; set; }
public static ConsoleColor ForegroundColor { get; set; }

Valore della proprietà

Oggetto ConsoleColor che specifica il colore di primo piano della console; vale a dire il colore con cui viene visualizzato ogni carattere. Il colore predefinito è grigio.

Attributi

Eccezioni

Il colore specificato in un'operazione set non è un membro valido di ConsoleColor.

L'utente non ha l'autorizzazione per eseguire questa azione.

Si è verificato un errore di I/O.

Esempio

Nell'esempio seguente viene verificato se il colore di sfondo della console è nero e, se è, cambia il colore di sfondo in rosso e il colore di primo piano su nero.

using System;

public class Example
{
   public static void Main()
   {
      if (Console.BackgroundColor == ConsoleColor.Black) {
         Console.BackgroundColor = ConsoleColor.Red;
         Console.ForegroundColor = ConsoleColor.Black;
         Console.Clear();
      }
   }
}

Nell'esempio seguente vengono salvati i valori dell'enumerazione ConsoleColor in una matrice e vengono archiviati i valori correnti delle BackgroundColor proprietà e ForegroundColor alle variabili. Viene quindi modificato il colore di primo piano in ogni colore dell'enumerazione, ad eccezione del colore corrispondente allo sfondo corrente e viene modificato il colore di sfondo in ogni colore dell'enumerazione ConsoleColorConsoleColor , ad eccezione del colore corrispondente al primo piano corrente. Se il colore di primo piano è uguale al colore di sfondo, il testo non è visibile. Infine, chiama il ResetColor metodo per ripristinare i colori della console originali.

using System;

class Example
{
   public static void Main()
   {
      // Get an array with the values of ConsoleColor enumeration members.
      ConsoleColor[] colors = (ConsoleColor[]) ConsoleColor.GetValues(typeof(ConsoleColor));
      // Save the current background and foreground colors.
      ConsoleColor currentBackground = Console.BackgroundColor;
      ConsoleColor currentForeground = Console.ForegroundColor;

      // Display all foreground colors except the one that matches the background.
      Console.WriteLine("All the foreground colors except {0}, the background color:",
                        currentBackground);
      foreach (var color in colors) {
         if (color == currentBackground) continue;

         Console.ForegroundColor = color;
         Console.WriteLine("   The foreground color is {0}.", color);
      }
      Console.WriteLine();
      // Restore the foreground color.
      Console.ForegroundColor = currentForeground;

      // Display each background color except the one that matches the current foreground color.
      Console.WriteLine("All the background colors except {0}, the foreground color:",
                        currentForeground);
      foreach (var color in colors) {
         if (color == currentForeground) continue;

         Console.BackgroundColor = color;
         Console.WriteLine("   The background color is {0}.", color);
      }

      // Restore the original console colors.
      Console.ResetColor();
      Console.WriteLine("\nOriginal colors restored...");
   }
}
//The example displays output like the following:
//    All the foreground colors except DarkCyan, the background color:
//       The foreground color is Black.
//       The foreground color is DarkBlue.
//       The foreground color is DarkGreen.
//       The foreground color is DarkRed.
//       The foreground color is DarkMagenta.
//       The foreground color is DarkYellow.
//       The foreground color is Gray.
//       The foreground color is DarkGray.
//       The foreground color is Blue.
//       The foreground color is Green.
//       The foreground color is Cyan.
//       The foreground color is Red.
//       The foreground color is Magenta.
//       The foreground color is Yellow.
//       The foreground color is White.
//
//    All the background colors except White, the foreground color:
//       The background color is Black.
//       The background color is DarkBlue.
//       The background color is DarkGreen.
//       The background color is DarkCyan.
//       The background color is DarkRed.
//       The background color is DarkMagenta.
//       The background color is DarkYellow.
//       The background color is Gray.
//       The background color is DarkGray.
//       The background color is Blue.
//       The background color is Green.
//       The background color is Cyan.
//       The background color is Red.
//       The background color is Magenta.
//       The background color is Yellow.
//
//    Original colors restored...

Commenti

Un'operazione get per un'applicazione basata su Windows, in cui una console non esiste, restituisce Gray. I sistemi Unix non forniscono alcun meccanismo generale per recuperare i colori della console correnti. A causa di questo, ForegroundColor restituisce (ConsoleColor)-1 fino a quando non viene impostato in modo esplicito (usando il setter).

Si applica a

Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1