データソースを使用する

データソースを定義した後、またはデータソースを定義するプラグインのdllを持っている場合、そのデータソースを使用したいプロジェクトにプラグインを追加して有効にします。データソースの定義 を参照してください。

Kanzi Studio プロジェクトでデータソースを操作するには、Window > Data Sources を選択します。

Data Sources ウィンドウを使用して、プロジェクト内のデータソースを作成、設定、削除し、データソースからデータオブジェクトをプロジェクト内のノードやリソースに接続します。

../../_images/window-data-sources1.png ../../_images/data-sources-window.png

データソースの作成

Kanzi Studio でデータソースを作成する前に、Kanzi Engine プラグインでデータソースを定義する必要があります。データソースの定義 を参照してください。

データソースを作成するには、

  1. Data Sources ウィンドウで Create Data Source をクリックします。

    ../../_images/create-data-source.png
  2. Create Data Source ウィンドウセットで:

    • このデータソースに使用したい名前を Name に設定します。

    • 作成したいデータソースのタイプに Data Source Type を設定します。

    OK をクリックします。

    ../../_images/create-cluster-data-source.png
  3. データソースに追加のプロパティを設定する必要がある場合は、Data Sources ウィンドウでプロパティを設定します。Data Sources ウィンドウで クイック編集 をクリックし、そのデータソースのプロパティを設定します。

    例えば、クイック編集 をクリックして、このデータソースがデータオブジェクトを生成するファイルを設定します。

    ../../_images/set-data-source-properties.png ../../_images/xml-data-source-file-to-cluster.png
  4. Data Sources ウィンドウで、データソースの隣にある リロードデータソース をクリックして、そのデータソースからデータオブジェクトを作成します。

    データオブジェクトにカーソルを合わせると、そのデータオブジェクトのデータ型と現在の値が表示されます。

    データソースプラグインがデータソースからデータオブジェクトを作成すると、そのデータをプロジェクトで使用できます。データオブジェクトの使用 を参照してください。

    ../../_images/load-data-source.png ../../_images/load-data-source-populated.png

データオブジェクトの使用

データソースからデータを使用する前に、Kanzi Engine プラグインでデータソースを定義し、データソースを作成する必要があります。データソースの定義 と データソースの作成 を参照してください。

このセクションでは、ブール、浮動小数点、整数、および文字列のデータオブジェクトタイプの使用方法について説明します。リストデータオブジェクトタイプの使用方法については、リストデータオブジェクトの使用 を参照してください。

データオブジェクトを使用するには:

  1. Node Tree でデータソースを使用したいノード(またはその親ノードのいずれか)を選択し、Properties で Data Context プロパティを追加し、使用したいデータのデータソースに設定します。

    例えば、RootPage ノードに Data Context プロパティを追加して設定します。

    Data Context プロパティを設定することで、アプリケーションがどのデータソースからデータを受け取るかを指定します。ノードに Data Context プロパティを設定すると、そのノードのすべての子ノードは Data Context プロパティの値を継承します。子ノードの1つに異なるデータコンテキストを使用したい場合は、そのノードに Data Context プロパティを追加し、使用したいデータコンテキストに設定します。

    ヒント

    データコンテキストを設定するには、Data Sources ウィンドウからデータオブジェクトをドラッグし、そのデータコンテキストを割り当てたい Node Tree のノードにドロップします。

    ../../_images/add-data-context-property.png ../../_images/data-context-cluster.png
  2. Data Context プロパティで設定したデータソースからデータを使用したいノードのプロパティに、データオブジェクトアイテムの値をバインドします。

    • 単一フィールドプロパティの場合、Data Sources ウィンドウからデータオブジェクトをドラッグし、そのデータオブジェクトから値を取得したいプロパティにドロップします。

      Kanzi は、Data Context プロパティによって設定されたデータソースからデータオブジェクトにプロパティの値をバインドするバインディングを作成します。

      ../../_images/data-sources-speed-unit-value.png ../../_images/single-field-property-properties.png ../../_images/single-field-property-binding-argument-editor.png
    • 複数のフィールドを持つプロパティの場合、Properties で + Add Binding をクリックし、Binding Editor で設定します。

      • データオブジェクトをバインドしたいフィールドのプロパティに Property を設定します。

      • データオブジェクトをバインドしたいプロパティフィールドに Property Field を設定します。

      • Data Sources ウィンドウからデータオブジェクトをドラッグし、Binding Editor の Expression ウィンドウにドロップします。

      Save をクリックします。

      Kanzi は、Property Field プロパティで設定したプロパティフィールドの値を、Data Context プロパティで設定されたデータソースからのデータオブジェクトにバインドするバインディングを作成します。

      ../../_images/data-sources-speed-value.png ../../_images/multiple-field-property-binding-argument-editor-drag.png ../../_images/multiple-field-property-binding-argument-editor-drop.png

リストデータオブジェクトの使用

データソースからデータを使用する前に、Kanzi Engine プラグインでデータソースを定義し、データソースを作成する必要があります。データソースの定義 と データソースの作成 を参照してください。

このセクションでは、リストデータオブジェクトタイプの使用方法について説明します。Boolean、float、integer、および string データオブジェクトタイプの使用方法については、データオブジェクトの使用 を参照してください。

リストデータオブジェクトを使用するには:

  1. Node Tree で、データソースまたはその親ノードのいずれかからデータを使用したいアイテムのために Grid List Box または Trajectory List Box 3D ノードを選択し、Properties で Data Context プロパティを追加し、使用したいデータのデータソースに設定します。

    例えば、RootPage ノードに Data Context プロパティを追加して設定します。

    Data Context プロパティを設定することで、アプリケーションがどのデータソースからデータを受け取るかを指定します。ノードに Data Context プロパティを設定すると、そのノードのすべての子ノードは Data Context プロパティの値を継承します。子ノードの1つに異なるデータコンテキストを使用したい場合は、そのノードに Data Context プロパティを追加し、使用したいデータコンテキストに設定します。

    ../../_images/add-data-context-property.png ../../_images/data-context-cluster.png
  2. Node Tree でリストボックスノードを作成または選択し、Properties で Item Template プロパティを追加して、データソースのリストデータオブジェクトからデータを表示するためにリストボックスノードが使用するプレハブテンプレートに設定します。Grid List Box ノードを使用する と Trajectory List Box 3D ノードを使用する を参照してください。

    ../../_images/project-contactslist.png ../../_images/item-template-contactitem.png
  3. Data Sources ウィンドウからリストデータオブジェクトタイプをリストボックスノードの Items Source プロパティにドラッグします。

    Kanzi は、Items Source プロパティの値を、Data Context プロパティによって設定されたデータソースからのリストデータオブジェクトにバインドするバインディングを作成します。

    Items Source プロパティを使用して、Grid List Box ノード内のリストアイテムにデータを提供するデータオブジェクトを設定します。

    ../../_images/data-sources-contacts-value.png ../../_images/item-source-contactslist.png ../../_images/items-source--property-binding-argument-editor.png
  4. Prefabs で、リストボックスノードの Item Template プロパティに設定したプレハブを選択し、リストデータオブジェクト内のデータオブジェクトをリストアイテムを定義するノードのプロパティにバインドして、データソースからリストボックスアイテムを埋めます。データオブジェクトの使用 を参照してください。

データソースの更新

Kanzi Engine プラグインがデータソースを更新しない場合、データソースを手動で更新することができます。

データソースを更新する方法は次のとおりです。

  • 特定のデータソースを更新するには、Data Sources ウィンドウで更新したいデータソースの横にある リロードデータソース をクリックします。データソースを更新すると、Kanzi Studio がそのデータソースからデータオブジェクトを作成します。

    データオブジェクトにカーソルを合わせると、そのデータオブジェクトのデータ型と現在の値が表示されます。

    ../../_images/load-data-source.png ../../_images/load-data-source-populated.png
  • プロジェクトまたはソリューション内のすべてのデータソースを更新するには、File > Update で選択します:

    • Kanzi Studio プロジェクトのデータソースを更新するための Update Data Sources in Project

    • Kanzi Studio プロジェクトおよび参照されているプロジェクトのデータソースを更新するための Update Data Sources in Solution

    ../../_images/update-data-sources-in-project.png
  • スクリプトを使用してデータソースを更新するには、スクリプトを使用してデータソースを作成および更新する を参照してください。

データソースのプロパティを変更する

データソースのプロパティを変更するには:

  1. Data Sources ウィンドウで クイック編集 をクリックし、そのデータソースのプロパティを設定します。

    例えば、クイック編集 をクリックして、このデータソースがデータオブジェクトを生成するファイルを設定します。

    ../../_images/set-data-source-properties.png ../../_images/xml-data-source-file-to-cluster.png
  2. Data Sources ウィンドウで、プロパティを設定したデータソースの隣にある リロードデータソース をクリックして、そのデータソースのプロパティに変更を適用します。

データソースの削除

データソースを削除するには、Data Sources ウィンドウで イメージ7 (image7) をクリックします。データソースを削除すると、Kanzi Studio はプロジェクトからデータソースを削除し、そのデータソースを使用していたすべての Data Context プロパティの値を <No Data Source> に設定しますが、そのデータソースを使用していたすべてのバインディングは保持されます。

APIでデータソースを使用する

詳細については、DataSource クラスを参照してください。

関連項目

データソースの定義

チュートリアル: データソースからアプリケーションデータを取得する

スクリプトを使用してデータソースを作成および更新する