Customerのクラスがあり、 Ordersの子オブジェクトがあるとします。Winforms アプリケーションでは、メイン フォームをCustomersのリストにバインドします。メイン フォームのグリッドには、顧客のOrdersが一覧表示されます。
これはすべて基本的なマスター/詳細の winform です。CustomerBindingSource.DataSource
を顧客リストに設定できます。グリッドDataSource
も文字列「Orders」です CustomerBindingSource
。のプロパティです。DataMember
Orders
Customer
実行時に、注文のコレクションとしてグリッドのコンテンツに到達したいと考えています。私の場合(さまざまな理由で)グリッドとそのコンテンツにしかアクセスできず、元の顧客にはアクセスできません(参照できませんCustomer.Orders
)
この疑似コードのようなものを使用して、グリッドの注文リストにアクセスしたいと思います。
CType(CType(OrdersGrid.DataSource, BindingSource).DataSource, Orders)
ただし、もちろん、これは機能しません。この種の古典的なマスター/詳細形式でDataSource
は、グリッドの は実際にはCustomerBindingSource
オブジェクトであり、注文は単なる でありDataMember
、文字列としてのみアクセスできます。
グリッド経由でそのOrdersコレクションに到達する方法はありますか?