Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

WPF binding StringFormat syntax

How can I format a decimal value conditionally in a WPF window?

  1. Value should be rounded to a whole number (Ex: 1,234)
  2. When the value is 0.00, it should display as a single zero. (Ex: 0)

Currently I use bellow mark up to format the decimal value, but it displays 00 when the value is 0.00. Please help.

<TextBlock
  Grid.Column="6"
  Padding="2"
  Text="{Binding Path=TotalAwardsExpended, StringFormat='{}{0:0,0}'}" />
like image 569
m00sila Avatar asked Jul 02 '10 17:07

m00sila


1 Answers

The extra 0 comes from the 0 after the colon.

Instead, try {}{0:#,0}.

From the MSDN docs on Custom Numeric String formats (emphasis added):

"0" | Zero placeholder | Replaces the zero with the corresponding digit if one is present; otherwise, zero appears in the result string.

like image 73
codekaizen Avatar answered Oct 24 '22 01:10

codekaizen