Я пытаюсь заполнить элементы меню (это ComboBox), когда значение Menu (также ComboBox) изменяется с помощью EntityFramework. Вот событие изменения индекса для меню (ComboBox4).
private void sfComboBox4_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.sfComboBox4.SelectedValue == null)
{
Console.WriteLine("Please select Menu");
}
else
{
this.loadMenuItems(Convert.ToInt32(this.sfComboBox4.SelectedValue.ToString()));
}
}
Теперь, это код для загрузки пунктов меню в ComboBox5, который предназначен для отображения пунктов меню.
private void loadMenuItems(int menuId)
{
//Here we are nullifying the previous data source for menu items ComboBox4
this.sfComboBox5.DataSource = null;
this.sfComboBox5.SelectedValue = null;
this.sfComboBox5.SelectedItem = null;
this.sfComboBox5.Text = null;
RestaurentEntities DB = new RestaurentEntities();
List<menuitem> selectedMenuDB = (DB.menuitems.Where(m => m.Menu_idMenu == menuId)).ToList();
DB.Dispose();
if (selectedMenuDB != null)
{
this.sfComboBox5.DataSource = selectedMenuDB;
}
else { Console.WriteLine("Menu is Empty therefore Menu items too");
}
}
Вот событие изменения индекса для ComboBox5, которое используется для отображения пункта меню.
private void sfComboBox5_SelectedValueChanged(object sender, EventArgs e)
{
if(this.sfComboBox5.SelectedValue != null)
{
Console.WriteLine(this.sfComboBox5.SelectedValue);//Exception
}
}
Теперь проблема в том, что когда я изменяю меню в третий раз, оно не заполняет пункты меню. Combobox
{"Ссылка на объект не установлена для экземпляра объекта. "}