我正在尝试制作一个主从表单,将主记录绑定(bind)到一个绑定(bind)源,将详细信息 datagridview 绑定(bind)到第二个绑定(bind)源

它工作得很好,只有 childBindingSource.SupportSorting 属性为假。masterBindingSource.SupportsSorting 是真的。有没有办法让 childBindingSource 支持排序——因为它基于另一个支持排序的绑定(bind)源?

masterBindingSource.DataSource = GetBindingSource()   // .SupportsSorting = true
childBindingSource.DataSource = masterBindingSource   // .SupportsSorting = false
childBinding.DataMember = ChildItems

private BindingSource GetBindingSource()
{
   DbSet<ContactEvent> dset = Db.ContactEvents;
   IOrderedQueryable<ContactEvent> qry = dset.Where(p => p.Id > 0).OrderBy(x => x.Id);
   qry.Load();

   BindingList<ContactEvent> bindinglist = dset.Local.ToBindingList();
   var bindingSource = new BindingSource();
   bindingSource.DataSource = bindinglist;
   return bindingSource;
}

最佳答案

在一些帮助下,我们使用
this link at codeplex

我不得不更改我的类(class)以使用 SortableBindingList 而不是 BindingList。
令我感兴趣的是,仅 BindingList 就足以用于主级别的网格 - 但不适用于包含详细信息的网格。

关于winforms - 如何让我的 bindingSource 支持排序?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14452195/

10-17 01:20