使用数据源

您定义数据源之后,或者您有定义数据源的某个插件 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 属性,并将其设置为您要使用数据的数据源。

    例如,将 Data Context 属性添加并设置到 RootPage 节点。

    通过设置 Data Context 属性,您可以告知应用程序从哪个数据源接收数据。当您为一个节点设置 Data Context 属性时,其所有子节点都会继承 Data Context 属性的值。如果您想为某个子节点使用不同的数据上下文,请在该节点中添加 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 插件中定义一个数据源并创建一个数据源。请参阅 定义数据源 和 创建数据源。

本节介绍如何使用列表数据对象类型。要了解如何使用布尔、浮点、整数和字符串数据对象类型,请参阅 使用数据对象。

要使用列表数据对象:

  1. 在 Node Tree 中,为您想要使用数据源数据的项目选择一个 Grid List Box 或 Trajectory List Box 3D 节点,或其父节点之一,在 Properties 中添加 Data Context 属性,并将其设置为您想要使用数据的数据源。

    例如,将 Data Context 属性添加并设置到 RootPage 节点。

    通过设置 Data Context 属性,您可以告知应用程序从哪个数据源接收数据。当您为一个节点设置 Data Context 属性时,其所有子节点都会继承 Data Context 属性的值。如果您想为某个子节点使用不同的数据上下文,请在该节点中添加 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 中选择:

    • Update Data Sources in Project 更新 Kanzi Studio 项目中的数据源。

    • Update Data Sources in Solution 更新 Kanzi Studio 项目和引用项目中的数据源。

    ../../_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 窗口中单击 image7。 当您删除数据源时,Kanzi Studio 会从项目中删除该数据源,并将所有使用该数据源的 Data Context 属性的值设置为 <No Data Source>,但会保留所有使用该数据源的绑定。

在 API 中使用数据源

有关详细信息,请参阅 DataSource 类。

另请参阅

定义数据源

教程:从数据源获取应用程序数据

使用脚本创建和更新数据源