Power Apps 中的组合框控件

用户可以在其中提供的选项之间进行选择的控件。 支持搜索和多重选择。

描述

使用 组合框 控件,可以搜索要选择的项。 由于在服务器端对 SearchField 属性执行搜索,因此性能不受大数据源影响。

单选或多重选择模式是通过 SelectMultiple 属性进行配置。

搜索要选择的项时,可以对所有项修改“数据”窗格中的“布局”设置,选择是显示一个数据值、两个数据值,还是一张图片和两个值(“人员”模板)。

在小屏幕上查看时,项目列表弹出项目将会变为一个全屏控件以提供更好的可用性。

备注

如果要搜索带有 数字 的项,请使用 Text() 函数将数字转换为文本。 例如,Text(12345)

人员选取器

若要将 组合框 用作人员选取器,请从“数据”窗格的“布局”设置中选择 人员 模板,并配置要显示的如下人员相关数据属性。

关键属性

Items – 提供待选选项的数据源。

DefaultSelectedItems – 用户与控件交互前的初始选定项。

SelectedItems – 用户交互后的选定项列表。

SelectMultiple – 用户是能选择一个项,还是能选择多个项。

IsSearchable – 用户能否在选择前先搜索项。

备注

IsSearchable 仅可以在包含至少一个文本字段的数据源上启用。 对于要使用搜索委派的查询,项目 表达式必须可委派。 即,不支持 项目 表达式中的 If 语句。

SearchFields – 用户输入文本时,所搜索的数据源的数据字段。

备注

要对多个字段进行搜索,请以此格式设置 SearchFields 属性:["MyFirstColumn", "MySecondColumn"]。 仅支持文本字段。

其他属性

AccessibleLabel – 屏幕阅读器标签。

BorderColor – 控件边框的颜色。

BorderStyle – 控件边框是 SolidDashedDotted 还是 None

BorderThickness – 控件边框的粗细。

DisplayFields – 针对搜索返回的每个项显示的字段列表。 通过“属性选项”选项卡中的“数据”窗格进行配置最为简单。

备注

若要更新给定模板中的多个显示字段,请以此格式设置 DisplayFields 属性:["MyFirstColumn", "MySecondColumn"]

DisplayMode – 此控件是允许用户输入 (Edit)、仅显示数据 (View),还是已禁用 (Disabled)。

FocusedBorderColor – 当聚焦到控件时,控件的边框颜色。

FocusedBorderThickness – 当聚焦到控件时,控件的边框粗细。

Height – 控件上边缘和下边缘之间的距离。

InputTextPlaceholder – 在未选中项目时向最终用户显示的说明文本。

OnChange – 当用户更改选择时要执行的操作。

OnNavigate – 当用户选择一个项目时要执行的操作。

OnSelect – 当用户点击或选择控件时要执行的操作。

TabIndex – 相对于其他控件的键盘导航顺序。

Visible – 控件显示还是隐藏。

Width – 控件左边缘和右边缘之间的距离。

X – 控件左边缘与其父容器(如果没有父容器,则为屏幕)左边缘之间的距离。

Y – 控件上边缘与其父容器(如果没有父容器,则为屏幕)上边缘之间的距离。

示例

基本组合框

此示例中的步骤适用于任何提供表的数据源,但要完全遵循这些步骤,请将环境与具有示例数据的 Microsoft Dataverse 数据库配合使用。

  1. 选择 插入 > 输入 > 组合框,并将其命名为“Combobox1”。

  2. 在屏幕右侧的 属性 窗格上,打开 选择数据源 列表(在 旁边),然后添加或选择数据源,例如“帐户”表。

  3. 在同一窗格中,选择 编辑(位于 字段 旁边)。

  4. 数据 窗格中,打开 主要文本 列表,然后选择将在 组合框 控件中显示的 主要名称 列。

  5. 按住 Alt 键,选择向下箭头打开 组合框 控件。

    该控件显示您在指定的数据源中指定的主要名称中的数据。

(可选)默认显示第一条记录

  1. DefaultSelectedItems 属性设置为此表达式,将 DataSource 替换为您的数据源名称:

    First(DataSource)
    

(可选)在标签中显示选定的帐户名称值

  1. 选择 插入 > 文本标签,然后选择 标签

  2. Text 属性设置为该表达式,用下面的公式替换 Text

    If(CountRows(ComboBox1.SelectedItems)>0, Concat(ComboBox1.SelectedItems,'Account Name',", "), "NO SELECTED ITEM")
    

    备注

    If 语句将查看所选项目的存在方式,并在逗号分隔的标签中显示它们,为空时显示“无选定项”消息。

模拟简单下拉行为

通过将 IsSearchable 设置为 false,并将 SelectMultiple 设置为 false,您可以实现下拉菜单的相同功能。

  1. 选择 插入 > 输入,然后选择 组合框

  2. 在屏幕右侧的 属性 窗格上,打开 选择数据源 列表(在 旁边),然后添加或选择数据源。

  3. 在同一窗格中,选择 编辑(位于 字段 旁边)。

  4. 数据 窗格中,打开 主文本 列表,然后选择要在 组合框 控件中显示的列。

  5. IsSearchable 属性设置为 false。

  6. SelectMultiple 属性设置为 false。

  7. 按住 Alt 键,选择向下箭头打开 组合框 控件。

    控件将显示您在指定的数据源中指定的列中的数据。

    备注

    “查找项目”文本已经消失,您将只能选择一个项目。

辅助功能准则

颜色对比度

在以下项之间必须有足够的颜色对比度:

  • ChevronFillChevronBackground
  • ChevronHoverFillChevronHoverBackground
  • SelectionColorSelectionFill
  • SelectionFillFill
  • SelectionTagColorSelectionTagFill

这是除标准颜色对比度以外的要求。

屏幕阅读器支持

  • AccessibleLabel 必须存在。

    备注

    在触摸屏上,屏幕阅读器用户可以按顺序导航组合框中的内容。 组合框充当一个按钮,在选中时会显示或隐藏其内容。

键盘支持

  • TabIndex 必须为零或更大,以便键盘用户可以导航到它。

  • 焦点指示器必须清晰可见。 可以使用 FocusedBorderColorFocusedBorderThickness 来实现此目的。

    备注

    Tab 键可导航到组合框或离开组合框。 箭头键可导航组合框中的内容。 Esc 键在打开时会关闭下拉列表。