【轉載】WPF中Binding使用StringFormat格式化字串方法

小林野夫發表於2024-04-20

原文連結:https://www.cnblogs.com/xuliming/articles/StringFormat.html

WPF中Binding使用StringFormat格式化字串方法

  • 貨幣格式
<TextBlock Text="{Binding Price, StringFormat={}{0:C}}" /> // $123.46
  • 貨幣格式,一位小數
<TextBox Text="{Binding Price, StringFormat={}{0:C1}}" /> // $123.5
  • 前文字
<TextBox Text="{Binding Price, StringFormat=單價:{0:C}}" /> //單價:$123.46
  • 後文字
<TextBox Text="{Binding Price, StringFormat={}{0}元}" /> // 123.45678元
  • 固定的位數,位數不能少於未格式化前,僅支援整形
<TextBox Text="{Binding Count, StringFormat={}{0:D6}}" /> // 086723
  • 指定小數點後的位數
<TextBox Text="{Binding Total, StringFormat={}{0:F4}}" /> // 28768234.9329
  • 用分號隔開的數字,並指定小數點後的位數
<TextBox Text="{Binding Total, StringFormat={}{0:N3}}" /> // 28,768,234.933
  • 格式化百分比
<TextBox Text="{Binding Persent, StringFormat={}{0:P1}}" /> // 78.9 %
  • 佔位符
<TextBox Text="{Binding Price, StringFormat={}{0:0000.00}}" /> // 0123.46
<TextBox Text="{Binding Price, StringFormat={}{0:####.##}}" /> // 123.46
  • 日期/時間
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:d}}" /> // 5/4/2015
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:D}}" /> // Monday, May 04, 2015
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:f}}" /> // Monday, May 04, 2015 5:46 PM
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:F}}" /> // Monday, May 04, 2015 5:46:56 PM
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:g}}" /> // 5/4/2015 5:46 PM
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:G}}" /> // 5/4/2015 5:46:56 PM
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:m}}" /> // May 04
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:M}}" /> // May 04
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:t}}" /> // 5:46 PM
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:T}}" /> // 5:46:56 PM
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:yyyy年MM月dd日}}" /> // 2015年05月04日
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:yyyy-MM-dd}}" /> // 2015-05-04
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:yyyy-MM-dd HH:mm}}" /> // 2015-05-04 17:46
<TextBox Text="{Binding DateTimeNow, StringFormat={}{0:yyyy-MM-dd HH:mm:ss}}" /> // 2015-05-04 17:46:56
  • 或者

    <TextBlock Text="{Binding Time,StringFormat='yyyy:MM:dd HH:mm:ss'}"/>
  • 多重繫結
複製程式碼
<TextBox.Text>
                        <MultiBinding StringFormat="姓名:{0}{1}">
                            <Binding Path="FristName" />
                            <Binding Path="LastName" />
                        </MultiBinding>
                    </TextBox.Text>
複製程式碼
// 姓名:AAbb
  • 多重繫結中的特殊字元
複製程式碼
<TextBox.Text>
                        <MultiBinding StringFormat="姓名:{0}&#x09;{1}">
                            <Binding Path="FristName" />
                            <Binding Path="LastName" />
                        </MultiBinding>
                    </TextBox.Text>
                        <!--
                        \a  &#x07;  BEL
                        \b  &#x08;  BS - Backspace
                        \f  &#x0c;  FF - Formfeed
                        \n  &#x0a;  LF, NL - Linefeed, New Line
                        \r  &#x0d;  CR - Carriage return
                        \t  &#x09;  HT - Tab, Horizontal Tabelator
                        \v  &#x0b;  VT - Vertical Tabelator 
                        -->
複製程式碼
// 姓名:AA bb

相關文章