Power Apps 中的组合框控件

允许用户从提供的选项中进行选择的控件。 支持搜索和多个选择。

Description

组合框控件允许搜索要选择的项目。 搜索在 SearchField 属性上执行服务器端,因此性能不受大型数据源的影响。

通过 SelectMultiple 属性配置单选模式或多选模式。

搜索要选择的项目时,可以选择通过修改“数据”窗格中的“布局”设置来显示单个数据值、两个值或图片和两个值(人员)。

在小屏幕上查看控件时,项目列表浮出控件将成为全屏控件,以提高可用性。

注释

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

局限性

组合框控件具有以下限制:

  • 在库内使用组合框控件时,当用户滚动库时,不会保留其选择。 如果在不滚动的库中使用组合框控件,则这不是问题。 目前不可用的解决方法。

人员选取器

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

键属性

– 可从中进行选择的数据源。

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

注释

默认 属性已弃用,请改用 DefaultSelectedItems

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

已选择 – 用户交互产生的最后一个选定项。

SelectMultiple – 用户是否可以选择单个项还是多个项。

IsSearchable – 用户是否可以在选择之前搜索项。

注释

只能对包含至少一个文本字段的数据源启用 IsSearchable“项”表达式必须可委派,以便通过搜索委托查询。 也就是说,不支持 Items 表达式中的 If 语句。

SearchFields - 用户在输入文本时搜索的数据源的数据字段。

注释

若要搜索多个字段,请设置以下格式的 SearchFields 属性:[“MyFirstColumn”、“MySecondColumn”。 仅支持文本字段。

其他属性

AccessibleLabel – 屏幕阅读器标签。

BorderColor – 控件边框的颜色。

BorderStyle – 控件的边框是 SolidDashedDotted 还是 None

BorderThickness – 控件边框的粗细。

DisplayFields – 搜索返回的每个项的字段列表。 最简单的方法是在“属性”选项选项卡中通过“数据”窗格进行配置。

注释

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

DisplayMode – 控件是否允许用户输入(编辑)、仅显示数据(视图)或已禁用(已禁用)。

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

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

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

InputTextPlaceholder – 未选择任何项目时向最终用户显示的说明性文本。

OnChange – 当用户更改所选内容时要执行的作。

OnNavigate – 当用户选择项时要执行的作。

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

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

可见 – 控件是显示还是隐藏。

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

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

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

注释

浮出控件边框属性由 边框 属性控制。

例子

基本组合框

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

  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 语句将检查选定项是否存在的方式,并在空时在逗号分隔的标签或“NO SELECTED ITEM”消息中显示它们。

模拟简单的下拉行为

通过将 IsSearchable 设置为 false,将 SelectMultiple 设置为 false,可以实现下拉列表的相同功能。

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

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

  3. 在同一窗格中,选择“ 编辑 ”( 字段旁)。

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

  5. IsSearchable 属性设置为 false。

  6. SelectMultiple 属性设置为 false。

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

    该控件显示你在指定的数据源中指定的列中的数据。

    注释

    “查找项目”文本已消失,只能选择单个项。

辅助功能指南

颜色对比度

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

  • ChevronFillChevronBackground
  • ChevronHoverFillChevronHoverBackground
  • SelectionColorSelectionFill
  • SelectionFillFill
  • SelectionTagColorSelectionTagFill

这除了 标准颜色对比度要求之外。

屏幕阅读器支持

  • AccessibleLabel 必须存在。

    注释

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

键盘支持

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

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

    注释

    选项卡键导航到组合框或离开组合框。 箭头键导航组合框的内容。 在打开时,转义键将关闭下拉列表。