Actualmente estoy desarrollando una aplicación C#.Enumerados y cuadros combinados en C#
Necesito usar una enumeración con un cuadro combinado para obtener el mes seleccionado. Tengo el siguiente para crear la enumeración:
enum Months
{
January = 1,
February,
March,
April,
May,
June,
July,
August,
September,
October,
November,
December
};
entonces inicializar el cuadro combinado utilizando la siguiente:
cboMonthFrom.Items.AddRange(Enum.GetNames(typeof(Months)));
Este bit de código funciona bien sin embargo el problema es cuando trato de conseguir la enumeración seleccionada valor para el mes seleccionado
para obtener el valor del empadronador en el cuadro combinado he utilizado el siguiente:
private void cboMonthFrom_SelectedIndexChanged(object sender, EventArgs)
{
Months selectedMonth = (Months)cboMonthFrom.SelectedItem;
Console.WriteLine("Selected Month: " + (int)selectedMonth);
}
Sin embargo, cuando intento ejecutar el código anterior, aparece un error que indica que se produjo una excepción de primera oportunidad del tipo System.InvalidCastException
.
Lo que he hecho mal.
Gracias por cualquier ayuda que puede proporcionar
excelente que funcionó a la perfección. Gracias – Boardy
No es necesario poner cadenas en el cuadro combinado y luego analizarlas en los valores de 'Meses '. Simplemente almacene los valores de 'Meses'. – Timwi
No debe almacenar valores de cadena en el cuadro combinado y recuperarlos como enumeraciones. Debe agregar valores de enum como elemento del cuadro combinado O bien, agréguelos como cadenas y conviértelos en enumeración. Es por eso que sugerí hacer esto último. – SadullahCeran