检查属性绑定

使用 Binding check 从当前解决方案的节点中收集属性绑定并导出报告。使用报告中的绑定表达式、状态和节点路径来检查绑定。

该工具会创建一个 .xlsx 报告,其中包含跨工程的汇总,以及每个工程的详细工作表。该工具还会将绑定的启用状态、活动状态和报告位置写入 Kanzi Studio 日志。

该检查不会修改绑定表达式、启用或禁用绑定,也不会自动修复问题。

检查范围

检查包括当前解决方案中的所有工程。在每个工程中,该工具会检查 Screen 的 RootNode2D 节点树以及 Prefab Library 中的节点。报告为每个非空绑定包含一条记录,不会列出没有绑定的节点。

运行检查

要检查当前解决方案中的绑定:

  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>

报告将其他三种状态组合均表示为 -。要区分这些组合,请查看日志中的 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)