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

货币格式

csharp 复制代码
<TextBlock Text="{Binding Price, StringFormat={}{0:C}}" /> // $123.46

货币格式,一位小数

csharp 复制代码
<TextBox Text="{Binding Price, StringFormat={}{0:C1}}" /> // $123.5

前文字

csharp 复制代码
<TextBox Text="{Binding Price, StringFormat=单价:{0:C}}" /> //单价:$123.46

后文字

csharp 复制代码
<TextBox Text="{Binding Price, StringFormat={}{0}元}" /> // 123.45678元

固定的位数,位数不能少于未格式化前,仅支持整形

csharp 复制代码
<TextBox Text="{Binding Count, StringFormat={}{0:D6}}" /> // 086723

指定小数点后的位数

csharp 复制代码
<TextBox Text="{Binding Total, StringFormat={}{0:F4}}" /> // 28768234.9329

用分号隔开的数字,并指定小数点后的位数

csharp 复制代码
<TextBox Text="{Binding Total, StringFormat={}{0:N3}}" /> // 28,768,234.933

格式化百分比

csharp 复制代码
<TextBox Text="{Binding Persent, StringFormat={}{0:P1}}" /> // 78.9 %

占位符

csharp 复制代码
<TextBox Text="{Binding Price, StringFormat={}{0:0000.00}}" /> // 0123.46
<TextBox Text="{Binding Price, StringFormat={}{0:####.##}}" /> // 123.46

日期/时间

csharp 复制代码
<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

或者

csharp 复制代码
<TextBlock Text="{Binding Time,StringFormat='yyyy:MM:dd HH:mm:ss'}"/>

多重绑定

csharp 复制代码
<TextBox.Text>
	<MultiBinding StringFormat="姓名:{0}{1}">
	<Binding Path="FristName" />
	<Binding Path="LastName" />
	</MultiBinding>
</TextBox.Text>
// 姓名:AAbb

多重绑定中的特殊字符

csharp 复制代码
<TextBox.Text>
	<MultiBinding StringFormat="姓名:{0}	{1}">
		<Binding Path="FristName" />
		<Binding Path="LastName" />
	</MultiBinding>
</TextBox.Text>// 姓名:AA    bb
<!--
\a  &#x07;  BEL
\b  &#x08;  BS - Backspace
\f  &#x0c;  FF - Formfeed
\n  
LF, NL - Linefeed, New Line
\r  
CR - Carriage return
\t  	  HT - Tab, Horizontal Tabelator
\v  &#x0b;  VT - Vertical Tabelator
-->
相关推荐
fogota7 小时前
C# WPF 按钮加载字体图标 / 动物头像
c#·.net·wpf
fogota8 小时前
C# WPF 按钮加载系统图标 / 动物头像
c#·.net·wpf
军训猫猫头8 小时前
C# 封装 MySQL 自动写入与查询工具类(基于 MySqlConnector)
mysql·c#·.net·wpf
gis开发之家1 天前
Spring Boot 4 定时任务与异步线程池:从 @Scheduled 到高并发任务编排(生产级实战)
java·spring boot·后端·wpf·spring boot4
clz13145212 天前
如何设计一个优雅可靠的金融级联机接口
wpf
闲云自留地3 天前
云平台存储管理员:Cinder 创建挂载卷 + Swift 分布式存储原理
分布式·wpf·swift
敲代码的嘎仔4 天前
从集群锁失效到异步领券:我用分布式锁 + Redisson + MQ 把领券接口 RT 从 200ms 压到 15ms
java·数据库·redis·分布式·缓存·ai·wpf
闲云自留地4 天前
OpenStack 的身份管家:Keystone 令牌、RBAC 权限模型拆解
wpf·openstack
FuckPatience6 天前
WPF 窗体唤醒,判断是否已存在,存在则弹出
wpf
程序员清风6 天前
从单体应用到微服务:后端系统拆分的基本方法
微服务·架构·wpf