4

マスター レコードを 1 つのバインディング ソースにバインドし、詳細データグリッドビューを 2 番目のバインディング ソースにバインドして、マスター/詳細フォームを作成しようとしています。

プロパティだけchildBindingSource.SupportSortingがfalseです。 masterBindingSource.SupportsSorting本当です。childBindingSourceソートをサポートする別のバインディング ソースに基づいている場合、ソートをサポートする方法はありますか?

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;
}
4

1 に答える 1

1

いくつかの助けを借りて 、codeplexでこのリンクを使用してこれを機能させました

BindingListの代わりにSortableBindingListを使用するようにクラスを変更する必要がありました。マスターレベルのグリッドにはBindingListだけで十分でしたが、詳細を含むグリッドには十分ではなかったのは興味深いことでした。

于 2013-01-23T22:42:01.857 に答える