LiveBinding を使ったデータの同期
RAD Studio での LiveBinding への移動
[LiveBinding デザイナ]を使用すると、次の公開プロパティを使用して、LiveBinding をサポートするさまざまなコントロールを同期することができます:
Synch
*
これらのプロパティは、LiveBinding ダイアグラムにおいて、特定のコントロールに対して表示されます。このトピックでは、Synch
プロパティおよび *
プロパティを使用して、リスト ボックスを文字列グリッドおよびバインディング ナビゲータと同期させる方法を説明します。
前提条件
まず、新たに FireMonkey アプリケーションを作成する必要があります(「FireMonkey デスクトップ アプリケーション」または「FireMonkey マルチデバイス アプリケーションおよびコンポーネント作成用ウィザード」を参照)。
そのメイン フォームに次のコンポーネントをドロップします。
- TPrototypeBindSource -- サンプル データを提供します。
- TBindNavigator -- サンプル データのナビゲーション機能を提供します。
- TListBox -- 情報(アルファ色のインスタンス名など)を表示します。
- TStringGrid -- サンプル データのすべての情報を表示します。
文字列グリッド コンポーネント(StringGrid1)をクリックし、オブジェクト インスペクタで Options.goEditing
プロパティを True に設定します。 こうすると、文字列グリッド内で項目を直接編集できるようになります。
LiveBinding での接続
[LiveBinding デザイナ]を起動し、次のように接続します。
PrototypeBindSource1
の * プロパティをBindNavigator1
の * プロパティに。PrototypeBindSource1
の * プロパティをStringGrid1
の * プロパティに。PrototypeBindSource1
の * プロパティをListBox1
の Synch プロパティに。
この時点で、リスト ボックスが文字列グリッドと同期し、バインディング ナビゲータがサンプル データ内の移動を制御するようになっています。
次に、サンプル データをプロトタイプ バインディング ソース コンポーネントに追加する必要があります。 「チュートリアル:TPrototypeBindSource と[LiveBinding デザイナ]を使用する」を参照して、サンプル データの追加方法を確認してください。 このトピックでは、ColorsNames と BitmapNames を追加する必要があります。
[LiveBinding デザイナ]で以下を行います。
PrototypeBindSource1
の BitmapName1 プロパティをListBox1
コンポーネントの Item.Text プロパティにバインドします。
バインディング図は次のようになっているはずです。
そして、フォーム上では、文字列グリッドにデータが表示され、リスト ボックスが自動的に更新されています。
アプリケーションの実行
F9 キーを押すか、メイン メニューから[実行|実行]''''を選択して、アプリケーションを実行します。
バインディング ナビゲータを使用したり、リスト ボックスや文字列グリッドで特定の項目を選択して、サンプル データ内を移動することができます。 また、文字列グリッドで項目の名前を更新すると、リスト ボックス内のその項目も自動的に更新されます。