1

この質問では、データセットをサブセットに分割することについて尋ねたところ、良い回答が得られました。今、私は反対の問題を抱えています。共通の祖先の 2 つの異なるサブクラスのオブジェクトを表す 2 つの異なるデータセットがあります。親に存在する 2 つのプロパティ ID # と Name を使用して、同じ TDBLookupComboBox で両方を同時に検索する必要があります。クラス。

ルックアップ フィールドを使用すると、複数のソース フィールドから検索できますが、2 つの異なるデータセットではなく、同じデータセット内でのみ検索できます。また、ルックアップ コントロールでは、検索するルックアップ フィールドを 1 つだけ指定できます。両方のデータセットからデータを取得してコンボ ボックスに一緒に表示する方法を知っている人はいますか?

4

4 に答える 4

3

複数のデータ ソースを使用する独自の TDBLookupComboBox を作成します。. . . 以前に DB 対応のコントロールを作成したことがあります (具体的にはドロップダウン コンボ ボックス)。それらは非常に簡単に実行でき、必要なすべての制御を提供します。

于 2008-12-11T21:53:34.013 に答える
2

両方のデータ セットのレコードを複製して、両方の結合を含む新しいデータセットにすることができます。

于 2008-12-11T21:52:57.213 に答える
1

答えは、リンク先の元の質問にあります。あなたは、両方のデータセットのメンバーに共通の祖先があると言います。したがって、これらすべてのオブジェクト レコードを単一の TClientDataset に配置し、2 つの子孫データセットに対して、その基本データセットから複製されたカーソルを使用するだけです。したがって、個別のセットとして、またはそれらを組み合わせた 1 つのセットとしてアクセスできます。

もちろん、基本クラスと共有されていない下位クラスに追加されたデータには、何かがあると仮定して、摩擦が発生します。. .

于 2008-12-11T21:51:52.143 に答える
0

実際には他の TDataSet の和集合である TDataSource または TDataSet の子孫を作成します。次に、挿入時に常に 1 つの特定の TDataSet に挿入するか、挿入する TDataSet を決定する特定のフィールドの値に基づくルールを設定します。. . .

于 2008-12-11T22:03:24.663 に答える