PowerApps表单中千位分隔符的实现方法咨询
我之前帮不少用户搞定过PowerApps表单里数值千位分隔符的需求,正好你的场景(SharePoint列表显示正常但表单里没效果)很典型,给你整理了几个亲测好用的方案:
方案1:直接用Text函数格式化显示控件
这是最快捷的方法,适合只需要查看时显示千位分隔符的场景:
- 如果表单是查看模式,把数据卡里的显示控件(比如Label)的
Text属性改成:
要是需要保留小数,就调整格式字符串:Text(Parent.Default, "#,###")Text(Parent.Default, "#,###.00") - 如果是货币类型,直接用内置的货币格式更省心:
Text(Parent.Default, "Currency")
方案2:自定义编辑控件实现实时格式化
如果需要用户编辑时也能看到千位分隔符,就得对输入控件做些调整:
- 选中表单里对应的TextInput控件,把它的
Format属性设为Format.Number,限制只能输入数字 - 给控件的
OnChange事件加代码,实时格式化输入内容:Self.Text = Text(Value(Self.Text), "#,###") - 重点注意:提交表单前,要把带逗号的文本转成纯数字,不然SharePoint数字列会报错。可以直接修改数据卡的
Update属性为Value(DataCardValue.Text),这样提交时自动转换。
方案3:分模式切换显示(兼顾编辑和查看体验)
如果想让编辑时输入纯数字、查看时显示千位分隔符,这种方案体验最好:
- 在数据卡里保留原来的TextInput控件,设置它的
Visible属性:Parent.DisplayMode = DisplayMode.Edit - 添加一个Label控件,放在TextInput的相同位置,设置它的
Visible属性:Parent.DisplayMode <> DisplayMode.Edit - 把Label的
Text属性设为格式化后的数值:Text(Parent.Default, "#,###")
这样切换表单的查看/编辑模式时,会自动切换显示控件,既保证编辑效率,又提升可读性。
内容的提问来源于stack exchange,提问作者Altus
相关产品推荐
相关产品推荐

