WPF StringFormat 格式化文本
StringFormat对特定数据格式的转换
WPF中,对数字/日期等的格式化,可参考此篇博客:https://www.cnblogs.com/zhengwen/archive/2010/06/19/1761036.html
StringFormat对语言项的格式化
1.单个动态数据绑定
例如:
“已使用此软件 365 天!”,WPF中可如下处理
添加资源项:
1 <system:String x:Key=”LangSource1″>已使用此软件 {0} 天!</system:String>
StringFormat格式化:
1 <TextBlock Text=”{Binding UsedDays,StringFormat={StaticResource LangSource1}}”/>
文本:《365》
StringFormat格式化:
<TextBlock Text="{Binding UsedDays,StringFormat=《{0}》}" Foreground="#018000"/>
其它案例:
1 <TextBox Text="{Binding Value, StringFormat={}{0:0000.0}}" /> // 0123.4 2 <TextBox Text="{Binding Value, StringFormat={}{0:####.#}}" /> // 123.4
2.多个动态数据绑定
例如:“30/365”
1 <TextBlock> 2 <TextBlock.Text> 3 <MultiBinding StringFormat="{}{0}/{1}"> 4 <Binding Path="LearnedDays" FallbackValue="0" /> 5 <Binding Path="PlanningDays" FallbackValue="0" /> 6 </MultiBinding> 7 </TextBlock.Text> 8 </TextBlock>
例如:“已经学习30天,剩余计划学习天数365”
添加资源项:
1 <system:String x:Key=”LangSource5″>已经学习{0},剩余计划学习天数{1}</system:String>
WPF中stringFormat处理:
1 <TextBlock> 2 <TextBlock.Text> 3 <MultiBinding StringFormat="{StaticResource LangSource5}"> 4 <Binding Path="LearnedDays" FallbackValue="0" /> 5 <Binding Path="PlanningDays" FallbackValue="0" /> 6 </MultiBinding> 7 </TextBlock.Text> 8 </TextBlock>
1 <TextBox.Text> 2 <MultiBinding StringFormat="姓名:{0}	{1}"> 3 <Binding Path="FristName" /> 4 <Binding Path="LastName" /> 5 </MultiBinding> 6 </TextBox.Text>
常见的特殊字符:
小于号(<) <
大于号(>) >
&符号(&) &
引号(“) "
单引号(‘) '
回车 
换行 

Tab 	
空格  
3. 数据格式转换与动态数据绑定的灵动结合
例如:“学生张三的期末平均成绩为93.20分”
添加资源项:
1 <system:String x:Key=”LangSource5″>学生{0}的期末平均成绩为{1:N2}分</system:String>
WPF中stringFormat处理:
1 <TextBlock> 2 <TextBlock.Text> 3 <MultiBinding StringFormat="{StaticResource LangSource5}"> 4 <Binding Path="Name"/> 5 <Binding Path="Score"/> 6 </MultiBinding> 7 </TextBlock.Text> 8 </TextBlock>
原文地址:https://www.cnblogs.com/kybs0/p/9709539.html
相关推荐
-
WinForm版图像编辑小程序(实现图像拖动、缩放、旋转、抠图) C#
2019-6-8
-
Netty学习笔记(番外篇) – ChannelHandler、ChannelPipeline和ChannelHandlerContext的联系 C#
2020-6-12
-
C和Lua之间的相互调用 C#
2019-7-21
-
密钥分离,.Net程序猿不再背锅 C#
2019-9-8
-
CASE WHEN 高阶用法? C#
2019-7-23
-
.Net使用HttpClient以multipart/form-data形式post上传文件及其相关参数 C#
2019-9-2
-
实体处理模块IEntityModule C#
2019-4-20
-
在Bootstrap开发中解决Tab标签页切换图表显示问题 C#
2019-5-17
-
C# / VB.NET合并PDF指定页 C#
2019-4-19
-
C#中的is和as C#
2019-5-17