我在Windows窗體上有兩個控件 - 一個Combobox和一個ListBox。實體框架Winforms
我想填充列表框,基於從ComboBox中選定的值,但我不斷收到以下錯誤。
無法轉換類型 'System.Data.Entity.DynamicProxies.Category_B0496327038CB6B25A6EF7B750129DD7B44A87BE41C4E2DB0F8D7A00898B060F' 的目的爲類型 'System.IConvertible'。
public partial class Form1 : Form
{
NorthWindEntities dbContext = new NorthWindEntities();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
cbx_Categories.DataSource = dbContext.Categories.ToList();
cbx_Categories.DisplayMember = "CategoryName";
cbx_Categories.ValueMember = "CategoryID";
}
private void cbx_Categories_SelectedIndexChanged(object sender, EventArgs e)
{
int categoryID = Convert.ToInt16(cbx_Categories.SelectedValue);
PopulateProductsLbx(categoryID);
}
void PopulateProductsLbx(int categoryID)
{
var products = from p in dbContext.Products
where p.CategoryID == categoryID
select p.ProductName;
lbx_Products.DataSource = products.ToList();
}
}
什麼是解決這個我最好的方法呢? 預先感謝您。
請參閱http://stackoverflow.com/questions/6901070/getting-selected-value-of-a-combobox –
@AllanWoods「ComboBoxItem」在WinForms中不可用 –
您可以嘗試明確地說cbx_Categories.SelectedValue.ToString ()。 –