Я пытаюсь получить число дней, основанное на Годе (годы - это числа) и Месяце (являются текстом), выбранных в поле со списком.
Имя поля комбинированного года: cmbYear
Название комбинированного месяца: cmbMonth
Событие запуска кода:
private void cmbMonth_SelectedIndexChanged(object sender, EventArgs e)
{
if (cmbYear.SelectedIndex > -1)
{
{
var a = cmbDay;
a.Enabled = true;
a.BackColor = Color.LightCoral;
}
cmbMonth.BackColor = Color.Empty;
MethodLibrary.Fill_cmbDay(cmbYear,cmbMonth, cmbDay);
Метод:
static class MethodLibrary //Method does not return something
{
public static void Fill_cmbDay(ComboBox strYear, ComboBox strMonth, ComboBox cmbTarget) //Void used does not return something
{
//Find how many days month has based on selected year & month. Convert month name to month number.
int days = DateTime.DaysInMonth(Convert.ToInt32(strYear.SelectedItem), Convert.ToInt32(strMonth.SelectedItem));
//Clear Combo box
cmbTarget.Items.Clear();
//Loop from 1 to number of days & add items to combo box
for (int i = 1; i <= days; i++)
{
cmbTarget.Items.Add(i);
}
}
}
UserForm:
![enter image description here](https://i.stack.imgur.com/kGYkn.png)
Ошибка в строке:
int days = DateTime.DaysInMonth(Convert.ToInt32(strYear.SelectedItem), Convert.ToInt32(strMonth.SelectedItem));
Я считаю, что ошибка происходит при преобразовании strMonth.SelectedItem в int32.
Помощь оценят.
![enter image description here](https://i.stack.imgur.com/dr3dR.png)