在Power Apps表单中,不管数据源的是SharePoint还是Dataverse,我们的选项字段在生成时对会默认被选择为下拉菜单的形式,并且这个下拉菜单在选择的项太多,显示不下的时候,还会把所选项给折叠起来。
而在有一些情况下,在表单中采用多选框的形式要比下拉框效果更好,同时还可以规避下拉框折叠已选选项的情况。
这种时候就只能自己来实现一个多选框的效果了。
首先我们在应用启动时准备一个数组,用来存我们选中的选项。
然后添加一个垂直库到表单中。
Power Apps的单选框是有根据数据源中的数据量来自动生成对应数量个单选按钮的功能的,但多选框却没有这个功能,用户只能一个一个的添加多选框。
所以我们这里采用了一个库,毕竟库有根据数据源中的数据量来自动生成多个项的能力,而我们只要把多选框放到库的项里,那么动态重复生成多个多选框的能力就搞定了。
然后再改一下这个库的数据源,把数据源改成我们多选字段的选项值。
让我们多选框的选项名自动变成多选字段的选项值。
接下来我们用我们在一开始创建的那个集合来收集我们选择的选项。
在选中项时,向集合中添加该项。
在取消选中时,再删掉该项。
再把整个多选字段的Update属性改成我们这个集合,这样保存的时候,该字段在后端数据库里的值就是从我们这个集合里拿了
最后再删掉原来的这个下拉框之前,把下拉框的ID先复制一份,删掉下拉框后把我们添加的这个库的ID给改成原来下拉框的ID,这样能让我们避免许多因为使用了下拉框ID而导致下拉框删除后出现报错的情况
这样我们就手动实现了一个多选框的效果。
---
欢迎加vx交流:vAfi_FeiFei