コンポーネントのプロパティをフィールドとリンクする
[LiveBinding ウィザード] への移動
ここでは、[LiveBinding ウィザード]を使ってデータセット内のフィールドにコンポーネントのプロパティをリンクする手順を説明します。
目次
まず HD マルチデバイス アプリケーションを作成し、その後、フォームに TLabel コントロールとクライアント データセットを配置します。ここでは、ラベルの Text プロパティを、データセットに渡されるデータ ファイルのテキスト フィールドにバインドする方法を説明します。
メモ: この手順を実施するには biolife.cds データベースが必要です。これは通常、以下の場所にあります。
- [スタート|プログラム|Embarcadero RAD Studio Athens|サンプル]で開かれる /Data ディレクトリにインストールされています。
- 上の Samples の Subversion リポジトリ内。
biolife.fds データベースは FireDAC データベースであり、必要なステップが異なる可能性があります。同様のデータベース(DBDEMOS)を使用するコード例については、FishFact(Delphi)サンプルで紹介しています。
「チュートリアル:LiveBinding を使用してコードを書かずにアプリケーションを作成する」に類似の LiveBinding チュートリアルがあります。
ヒント: 右クリック コンテキスト メニューから [LiveBinding ウィザード]を起動できるようにするには、[ツール|オプション...|LiveBinding]で[コンテキスト メニューに[LiveBinding ウィザード]コマンドを表示]をオンにして有効にする必要があります([LiveBinding デザイナ]からこのウィザードを起動する場合には、[オプション]ダイアログ ボックスでウィザード コマンドを有効にする必要はありません)。
ステップ 1:[バインディング タスク]
フォームにラベル コントロールを配置したら、それをデータセットの Category フィールドにバインドする必要があります。
まず、クライアント データセット コンポーネントをクリックし、[オブジェクト インスペクタ]で FileName プロパティを探します。そこにbiolife.cds データベースの場所を指定します。
[オブジェクト インスペクタ]で Active プロパティを探し、True に設定します。
ラベル コントロールを右クリックし、[LiveBinding ウィザード...]コマンドを選択します。
その後、[バインディング タスク]ウィザード ページで[Label1 のプロパティをフィールドにリンク]を選択します。
[次へ >>]ボタンをクリックすると、選択内容が有効になります。
ステップ 2:[コンポーネント プロパティ]
ここでは、ラベルをバインドする先のコンポーネントとプロパティを選択します。
[コンポーネント]コンボ ボックスで Label1 を選択します。
[プロパティ]コンボ ボックスで Text を選択します。これは、ラベルのリンク先が Category というテキスト フィールドだからです。
[次へ >]をクリックします。
ステップ 3:[データ ソース]
ここでは、[既存ソース]タブからデータセットを選択します。ClientDataSet1 を選択します。
[次へ >]をクリックします。
ステップ 4:[フィールド]
ここでは、biolife.cds データベースに含まれる使用可能なフィールドのリストが表示されます。
Category フィールドを選択します。
[次へ >]をクリックします。
ステップ 5:[オプション]
バインディング式と一緒にデータ ソース ナビゲータを作成するかどうかを尋ねられます。
この例では、ナビゲータを追加するよう選択します。
これがウィザードの最後のページなので、[完了]をクリックします。
ウィザードが閉じた後、指定したデータセットの Category フィールドとラベル コントロールの Text プロパティとをバインドするバインディング式が新規作成されます。
結果
ウィザードが閉じた後で IDE のデザイナに戻ると、LiveBinding エンジンに関係する 2 つの新しいコンポーネント(TBindingsList および TBindScopeDB)と TBindNavigator コンポーネントが追加されていることがわかります。バインディング式エディタ ダイアログ ボックスは、BindingsList1 コンポーネントをダブルクリックすると開きます。
ここでアプリケーションを実行し(F9 キーを押します)、データセット内のレコードを順に参照してバインディング式をテストします。ラベルのテキストが正しく更新されることを確認できます。
次に示すのは、実行中のアプリケーションのスクリーンショットです。