Use*_*404 3 c# linq-to-sql winforms
嗨,我使用Linq到SQl绑定组合框控件.如何在组合框列表的顶部添加项?
var items = from c in db.Contacts
orderby c.Name ascending
select c;
if (items.ToList().Count > 0)
{
cmb1.BindingContext = new BindingContext();
cmb1.DataSource = items;
cmb1.DisplayMember = "Name";
cmb1.ValueMember = "ID";
}
cmb1.Items.Insert(0, "--Select--");
Run Code Online (Sandbox Code Playgroud)
上面的代码失败了.
小智 9
一种方法是在绑定之前将"--Select--"联系人占位符插入到结果中:
var items = (from c in db.Contacts
orderby c.Name ascending
select c).ToList();
items.Insert(0, new Contact { ID = 0, Name = "--Select--" });
cmb1.BindingContext = new BindingContext();
cmb1.DataSource = items;
cmb1.DisplayMember = "Name";
cmb1.ValueMember = "ID";
Run Code Online (Sandbox Code Playgroud)
或者您可以使用匿名版本的结果执行相同的操作:
var items = (from c in db.Contacts
orderby c.Name ascending
select new { c.ID, c.Name }).ToList();
items.Insert(0, new { ID = 0, Name = "--Select--" });
cmb1.BindingContext = new BindingContext();
cmb1.DataSource = items;
cmb1.DisplayMember = "Name";
cmb1.ValueMember = "ID";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16156 次 |
| 最近记录: |