1

OOPについて質問です。私は Delphi の初心者ではありませんが、主にインターネットから自分で学び、「正しい」方法で学びませんでした。数週間前に OOP を調べ始めたところです。これが私の問題です。「セッション」と呼ばれる独自のクラスがあります。このクラスは、Visual LiveBinding を介して Edit に接続されます。クラスに TClientDataset のデータを入力したい (データセットを直接編集にバインドしないのには理由があります)。1. データセットを実装し、ファイルとナビゲーションを開く処理を行う別のクラスを作成します。2. ClientDataset を Form にドラッグ アンド ドロップし、次のように Livebindings を使用してクラスに接続します。 DataSet <---> Class <---> Edit

私の説明を理解していただければ幸いです。だから:どちらのアイデアが良いですか?LiveBinding は OOP の概念を「破壊」しているように感じます。一方で、ライブ バインディングがそれを行ってくれるので、コードや型キャストを記述する必要はありません。では、どの方法を選択し、その理由は何ですか? それとも誰か別のアイデアがありますか?

私の言いたいことを理解して、私を助けてくれることを願っています:)

4

1 に答える 1

1

LiveBinding を使用すると、データセットの代わりにオブジェクトにバインドすることが完全に可能です。参照: http://www.malcolmgroves.com/blog/?p=1084

要約すると、TAdapterBindSourceコンポーネントを見てください。これは、既存のコントロールとカスタム オブジェクトの間に LiveBinding を作成するために設計されています。その onCreateAdapter イベントでは、特定の 1 つのオブジェクトをバインドする場合に TObjectBindSourceAdapter を aBindSourceAdapter として返すか、オブジェクトのリストをバインドするために TListBindSourceAdapter を返すことができます。

LiveBinding と OOP は噛み合わない!

于 2014-10-21T15:40:30.037 に答える