¿Cómo iterar sobre todos los valores de una enumeración (enum) en C#?
¡Hola a todos! Soy nuevo en C# y me encontré con esta tarea: tengo una enumeración (enum) para los días de la semana:
```csharp
public enum DaysOfWeek
{
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
}
```
Necesito mostrar todos los días de la semana en pantalla o, por ejemplo, llenar un ComboBox en WinForms. Por ahora lo hago manualmente, pero es incómodo y poco flexible — si agrego un nuevo día, tendré que modificar el código en todas partes.
Intenté escribir un bucle simple, pero el compilador se queja de que no se puede usar `DaysOfWeek` como una colección:
```csharp
foreach (var day in DaysOfWeek) // Error: foreach no puede funcionar con el tipo DaysOfWeek
{
Console.WriteLine(day);
}
```
Por favor, indíquenme cómo iterar correctamente sobre todos los valores de una enumeración en C#. ¿Quizás existe algún método incorporado? ¡Gracias de antemano!
<<>>
Uso de
Uso de Enum.GetValues — la forma principal
En C#, para iterar sobre todos los valores de una enumeración, se usa el método estático Enum.GetValues.