WPF: Textbox Binding with StringFormat={}{0:F2}. D

2019-06-14 22:15发布

问题:

I am binding an object to a TextBox with the following XAML:

<TextBox Name="MyTextBox" Text="{Binding Path=MyValue, Mode=TwoWay, StringFormat={}{0:F2}}" />

Naturally when I bind a new object (which values are all still zero) the Text property is set to 0.00. I have several of these TextBoxes, which makes it tedious to delete every value before entering a new one.

At the moment I'm clearing these boxes in the Window_Loaded method using the FindVisualChildren method.

It just feels clunky though. Is there a neat way of doing this?

回答1:

Try the following:

StringFormat={}{0:#.##}

It will format to two decimal places and won't show zeroes.