我按照以下几行设置了组合框的数据源:
comboBox1.DataSource = from p in db.products select p;comboBox1.displayMember = "name";comboBox1.ValueMember = "ProductID";
如果我这样做,我可以通过以下方式选择所选项目:
comboBox1.SelectedItem = (from p in db.products where p.ProductID = 5 select p).First();
问题是我想用匿名类型结果填充组合框,如:
comboBox1.DataSource = from p in db.products select new { p.ProductID,p.name };
我实际使用的匿名类型比那更复杂,但它足以解释.
解决方法 如何将其转换为列表,然后从中选择正确的列表.由于SelectedItem似乎不起作用,您可能想尝试设置SelectedValue.var productList = (from p in db.products select new { ProductID = p.ProductID,name = p.name }).ToList();comboBox1.DataSource = productList;comboBox1.displayMember = "name";comboBox1.ValueMember = "ProductID";comboBox1.SelectedValue = 5;总结
以上是内存溢出为你收集整理的c# – 使用ComboBox的SelectedItem属性w / Linq匿名类型全部内容,希望文章能够帮你解决c# – 使用ComboBox的SelectedItem属性w / Linq匿名类型所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)