cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
redlyst
Regular Visitor

Force Text Input Format Number to Comma or Dot?

 

So, when I type 1000000 in that field, its automatically force to 1.000.000, how to do that? 

 

1 ACCEPTED SOLUTION

Accepted Solutions
RusselThomas
Microsoft
Microsoft

Hi redlyst,

 

You can try the Text() function to format numbers using commas and periods.

I'm not sure how you can format input numbers while typing though - functions generally get applied to an existing value.

 

To illustrate;

 

Create Text Input TextInput1 and set the Format property to TextFormat.Number 

Create Text Label Label1

 

Set the Text property of Label1 to;

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

The Text() function with number formatting looks for a number to apply the formatting to, hence the Value() function wrapper.

 

What you type into the input will be replicated to the label, but with formatting.

Like I said though, formatting as you type, or pre-formatting input controls is not something I know how to do.  You could possibly put the input field over the label and make it transparent to give an effect of formatting as you type...but this could have weird results when tabbing through or selecting everything in the input control, unless it's 100% aligned.

 

Hope this helps,


RT

 

View solution in original post

4 REPLIES 4
RusselThomas
Microsoft
Microsoft

Hi redlyst,

 

You can try the Text() function to format numbers using commas and periods.

I'm not sure how you can format input numbers while typing though - functions generally get applied to an existing value.

 

To illustrate;

 

Create Text Input TextInput1 and set the Format property to TextFormat.Number 

Create Text Label Label1

 

Set the Text property of Label1 to;

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

The Text() function with number formatting looks for a number to apply the formatting to, hence the Value() function wrapper.

 

What you type into the input will be replicated to the label, but with formatting.

Like I said though, formatting as you type, or pre-formatting input controls is not something I know how to do.  You could possibly put the input field over the label and make it transparent to give an effect of formatting as you type...but this could have weird results when tabbing through or selecting everything in the input control, unless it's 100% aligned.

 

Hope this helps,


RT

 

View solution in original post

gmaasz
Resolver I
Resolver I

@redlyst @RusselThomas @

 

You can set the default value of the inputbox with a variable, after which you set the variable to the newly input value, and then reset the value of the input text field.

On the default value of the field:

 

Set(Variable,Text(Value(TextInput1.Text),"[$-en-US]###,###,###.00"));Reset(TextInput1)

Apologies, the formuyla should be on the OnChange field, and the default value of the field should be changed to the variable name

RickJ
Frequent Visitor

Nice solution @gmaasz - also if wanting to set the default from a table, I check if the variable is blank, if it is I use the value from the datasource, and make sure I clear the variable on OnHidden. 

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Welcome Super Users.jpg

Super User Season 2

Congratulations, the new Super User Season 2 for 2021 has started!

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Users online (1,547)