cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
skylitedave
Super User
Super User

Keep Currency formatting after during and after editing

Hi

 

I have a form with a text field that is displaying currency

I set the default to the following and the text field initially displays the entry as US currency

 

             Text(Value(Parent.Default),"[$-en-US]$ ###,###.00","en-US")

 

As soon as I change the form to edit mode and select the field and edit the value, it loses all formatting as shown below

 

Note - The Weighted Amount field has not been clicked on and edited while the form is in edit mode while the Amount field initially displayed properly, then I click on it and it loses all formattting while the form is in Edit mode....

 

Question - What is the trick to keep the formatting of the text field during and after editing of a text field within a datacard

 

no formatting.png

3 REPLIES 3
v-micsh-msft
Community Support
Community Support

No, there is no direct format property avaialble for the TextInput control.

Please consider submit it as an idea under PowerApps idea forum, if you prefer to add a property for that:

https://powerusers.microsoft.com/t5/PowerApps-Ideas/idb-p/PowerAppsIdeas

A similar one

 

Further, a possible workaorund you may give it a try:

 

TextInput1.OnChange = UpdateContext({FormatValue: Text(Value(TextInput1.Text),"[$-en-US]$ ###,###.00","en-US")})

TextInput1.Default = FormatValue

 

You might need to first set the FormatValue with with navigate to the Edit screen.

 

Text(Value(Parent.Default),"[$-en-US]$ ###,###.00","en-US")

 

Regards,

Michael

Community Support Team _ Michael Shao
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

That sugested solution does not work

The suggested solution didn't work for me either so I tried the following which worked for me.

 

In the text input OnChange I added the UpdateContext function as noted - UpdateContext({formatValue: Text(Value(InputName.Text),"[$-en-US]$#,##0.00")}) and in the Default for the card I added the following If function - If(formatValue <> "", Text(formatValue), ThisItem.format_value).

 

Hopefully this makes sense and works for you as well.

Helpful resources

Announcements
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Top Solution Authors
Top Kudoed Authors
Users online (3,900)