プロパティのバインディングをチェックする

Binding check を使用すると、現在のソリューション内のノードからプロパティのバインディングを収集し、レポートをエクスポートできます。レポート内のバインディング式、状態、ノードパスを使用して、バインディングを確認します。

このツールは、プロジェクト全体のサマリーと、プロジェクトごとの詳細なワークシートを含む .xlsx レポートを作成します。また、バインディングの有効状態、アクティブ状態、およびレポートの場所を Kanzi Studio のログに出力します。

このチェックでは、バインディング式の変更、バインディングの有効化または無効化、問題の自動修正は行いません。

チェックの範囲

チェックの対象は、現在のソリューション内のすべてのプロジェクトです。ツールは各プロジェクトで、Screen の RootNode2D ノードツリーと Prefab Library 内のノードをチェックします。レポートには、空でないバインディングごとに 1 つのレコードが含まれます。バインディングを持たないノードはリストされません。

チェックの実行

現在のソリューション内のバインディングをチェックするには、以下の手順に従います。

  1. チェックするプロジェクトとバインディングが意図した状態になっていることを確認します。

../../_images/Binding-check.png
  1. Binding check を選択します。

  2. ダイアログで、レポートの保存先ディレクトリを選択します。

  3. ツールがノードの走査とレポートの書き込みを完了するまで待ちます。

  4. Log で Excel file saved: を探し、その後に続くファイルパスを確認します。

  5. レポートを開きます。まず NotBindings を確認し、その後、必要に応じて各プロジェクトのワークシートを確認します。

出力ファイル

このツールは、選択したディレクトリにレポートを保存し、ファイル名にはローカルの日付と時刻を使用します:

binding_check_yyyyMMdd_HHmmss.xlsx

通常、実行するたびにタイムスタンプ付きの新しいファイルが作成されます。

レポートの構造

NotBindings サマリーワークシート

NotBindings は最初のワークシートです。優先的に確認できるように、すべてのプロジェクトから - が付いたバインディングを集めています。

コラム (Column)

内容

Project Name

バインディングを含むプロジェクトの名前。

Node Name

バインディングのターゲットプロパティの名前。

Binding Code

バインディング式。

Is Checked

現在のステートマーカー。このワークシートでは - です。

Node Path

バインディングを含むノードの KZB URL パス。

注釈

NotBindings は、バインディングのないノードのリストでも、確定したエラーのリストでもありません。イネーブルかつアクティブの両方を満たしていない既存のバインディングが含まれ、意図的に無効にしたバインディングも含まれます。

プロジェクトのワークシート

このツールは、プロジェクトごとにそのプロジェクト名のワークシートを作成します。各ワークシートには、チェック範囲内のすべてのバインディングが、O と - のレコードを含めて一覧表示されます。

コラム (Column)

内容

Node Name

バインディングのターゲットプロパティの名前。

Binding Code

バインディング式。

Is Checked

現在のバインディングのステートマーカー: O または -。

Node Path

バインディングを含むノードの KZB URL パス。

複数のバインディングを持つノードは、複数のローとして出力されます。Node Path を使用してノードを見つけ、次にターゲットプロパティ名を使用してバインディングを見つけます。

チェックステートについて

このツールは、IsBindingEnabled と IsBindingActive からステートを判断します:

IsBindingEnabled

IsBindingActive

チェック済み (Is Checked)

意味

true

true

O

バインディングは現在イネーブルかつアクティブです。

true

false

-

バインディングはイネーブルですが、現在アクティブではありません。

false

true

-

イネーブルとアクティブのステートが異なります。ログとノードのコンテキストを確認してください。

false

false

-

バインディングは現在無効で、非アクティブです。

O は大文字のアルファベットの O で、数字のゼロではありません。

Is Checked はツールが生成するステートマーカーであり、ユーザーが確認のために使用するチェックボックスではありません。

注釈

O は、読み取り時にバインディングがイネーブルかつアクティブであったことを示すだけです。式が意図した結果を生成することを証明するものではありません。- が付いたバインディングについては、変更する前にそのバインディングの使われ方を確認してください。

ログを表示する

プロジェクトの詳細をチェックしている間、このツールは次のバインディング情報を Log に書き込みます:

  • ターゲットプロパティ名。

  • バインディング式。

  • enable: バインディングがイネーブルかどうか。

  • active: バインディングがアクティブかどうか。

  • path: ノードのパス。

ログのフォーマットは次のとおりです。

CheckNode Name:<property name>, Binding Code: <expression>, enable: <True/False>, active: <True/False>, path:<node path>

このツールは、走査したアイテムのタイプもログに記録します。レポートが正常に保存されると、次のように出力します。

Excel file saved: <full report path>

レポートでは、その他 3 つのステートの組み合わせはすべて - と表示されます。これらを区別するには、ログの enable と active を確認します。

レポートからバインディングを確認する

レポートのバインディングを見つけて確認するには、次の手順に従います。

  1. NotBindings を開きます。

  2. Project Name を使用してプロジェクトを特定します。

  3. Node Path を使用してノードを見つけます。

  4. Node Name のプロパティ名を使用して、バインディングのターゲットプロパティを見つけます。

  5. Binding Code をノードのエクスプレッションと比較します。

  6. ログの enable と active を確認します。

  7. バインディングが意図的に無効化されているのか、それともその参照、エクスプレッション、使用コンテキストを調査する必要があるのかを判断します。

  8. 変更を加えた場合は、再度 Binding check を実行し、新しいレポートを確認します。

新しいチェックを実行すると新しいレポートが作成され、以前のレポートはアップデートされません。レポートのセルを編集しても、Kanzi Studio プロジェクトのバインディングは変更されません。

関連項目

バインディング (Bindings)