练习 - 画布应用中的公式简介

已完成

您是否知道我们可以向 Power Apps 中的控件添加公式? 例如,请记住文本标签只需要文本,而图像控件需要图像。 如果您提供 Power Apps 所期望的输入,则可以输入任何变体,只要公式反映控件期望的输入类型即可。

在下面的练习中,我们将修改自己的库,以便“Machine Price”显示货币值,我们还将修改“Type”字段的文本颜色以显示为咖啡机颜色。 此应用基于我们在上一个单元中创建的应用而生成,因此,如果您尚未完成该应用,请返回到上一个单元将其完成。

打开您的“Contoso 咖啡机”应用后,继续执行以下步骤:

  1. 树视图面板中,选择“Catalog Screen”。

    注意

    您还可以通过当前显示屏幕下角的下拉菜单来切换屏幕。 如果选择下拉菜单,则您当前所在的屏幕旁将出现一个复选标记,并且以深灰色突出显示。

  2. 选择您的库以将其展开,然后选择 Subtitle1 控件旁边的省略号。 依次选择复制>复制。 (或者,您可以在 Subtitle1 控件上右键选择,然后依次选择复制>复制。)

  3. 再次选择 Subtitle1 旁边的省略号,然后选择粘贴。

  4. 这将在 Subtitle1 上创建名为 Subtitle1_1 的副本。 选择新的副标题并将其拖动到 Subtitle1 下方。

  5. 树视图中的库下方选择 Subtitle1,选择它,然后将 Text 属性设置为 ThisItem.'Machine Price'。

  6. 若要添加美元货币符号,请将 Text 属性设置为:

    Text(Value(ThisItem.'Machine Price'), "$ ##.00")

    使用公式时请记住数学运算的顺序,所有括号内的项目应先进行计算。 我们的公式会取 'Machine Price' 的值,由于它在我们的数据表中是以文本形式输入的,因此我们通过将其包装在 Value() 函数中,将其声明为数值。 然后,我们将结果格式化为文本,连同数字一起添加美元符号,然后添加美分值(即使美分值为零)。

    注意

    如果公式返回错误,说明 Power Apps 环境的语言设置可能会影响某些分隔符和运算符。 例如,上述公式适用于以点或句点为小数分隔符的语言和地区(如日本或英国)。

    在以逗号为小数分隔符的语言和地区(如法国或西班牙),此公式将变为:Text(Value(ThisItem.'Machine Price'); "$ ##,00")

    ThisItem.Price 中的属性选择运算符“.”(点或句点)始终相同,不受小数分隔符的影响;但请注意,小数分隔符和链接运算符将分别变为逗号和分号。 公式的内部不会改变,只是作者显示和编辑它的方式会改变。

  7. 现在,让我们更改库中 Subtitle1_1 标签的 Color 属性。 选择 Subtitle1_1 控件并查找 Text 属性,该属性显示 ThisItem.Type。

  8. 找到 Subtitle1_1 的 Color 属性。 您将看到它显示“RGBA(0, 0, 0, 1)”。 另请注意,在公式输入字段正下方,Power Apps 会显示一个标有 RGBA(0, 0, 0, 1) = 的公式,以及一个填充为黑色的正方形。 它还声明数据类型颜色

  9. 让我们将 Subtitle1_1 标签的 Color 属性更改为 Color.Purple。 您可能已经注意到,一旦键入“颜色”一词,Power Apps 就会开始在编辑栏下方自动推荐该字段其余部分的可能值。 在该语法中,Power Apps 将识别所有可用的 HTML 颜色。

    注意

    某些字段(例如“颜色”字段)仅在您选择公式输入字段的内部时显示完整的公式值。 输入颜色值时,必须包含所有公式组成部分,以便 Power Apps 能够理解输入。 在本例中,公式必须是 Color.Purple

  10. 现在,快速浏览一下窗体控件上库的右侧(不进行选择),可以看到此处有一个标题为“Primary Color”的字段。 写入我们的数据,以便在公式中可以使用此字段的值。 在 Subtitle1_1 标签的 Color 属性字段中,将输入更改为以下公式:

    ColorValue(ThisItem. 'Primary Color')

    您是否注意到,此时 Subtitle1_1 标签中的文本颜色与咖啡机的 Primary Color 相符? Power Apps 可以使用 ColorValue 公式将颜色的文本名称更改为颜色值。 您可以看到,在编辑栏正下方,Power Apps 将数据类型显示为颜色,并且它会根据机器的主要颜色更改所有库项的颜色。

  11. 接下来,我们将向我们创建的新屏幕添加一些标题。 为此,我们将从 Catalog Screen 复制一些控件并将其粘贴到新屏幕上。 按住 Shift 键,在您的“Catalog Screen”顶部选择 Rectangle1Label1 控件(您也可以从树视图中选择它们)。 右键选择并选择“复制”,或者使用 Ctrl + C 键将控件复制到设备的剪贴板上。

    提示

    “右键选择”一个控件或多个选定的控件时,可以看到一些实用功能。 在您的屏幕上,这些功能将会在所选控件旁边弹出。 您不仅可以剪切复制,还可以分组、重新排序、对齐或添加注释(针对其他用户)。 根据控件类型,您将看到诸如字体、大小、颜色和填充等功能。

  12. 现在,选择“Home Screen”并将两个控件粘贴到其中。 重新放置它们,使它们都位于屏幕顶部的中心位置。

  13. 接下来,选择“Admin Screen”并重复粘贴。 同样,重新放置这些控件。

  14. 接下来,使用我们插入的标签控件的 Text 属性,我们将更改名称以反映屏幕名称。 选择“Admin Screen”标头中的标签控件。 请记住,标签控件中只能添加文本。 向标题标签控件的 Text 属性中输入以下内容:

    'Admin Screen'.Name

    提示

    您可能已经注意到,开始键入“Admin Screen”时,Power Apps 显示了“Admin Screen”中的一些潜在信息,您可以将其用作此标签中的文本。 在开发应用时,标签是要添加到应用中的极其重要的控件,因为有一些信息可能必须依靠标签来显示。 您可以根据需要在应用中添加/删除它们。

  15. 我们只使用了“Admin Screen”中的 Name 属性。 现在,让我们在 Text 公式中输入以下内容,通过 Home Screen 执行相同的操作:

    'Home Screen'.Name

随着我们使用包含控件公式的函数增强用户体验,我们的应用现已初步成型。