WPF StringFormat 格式化文本
Posted lonelyxmas
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF StringFormat 格式化文本相关的知识,希望对你有一定的参考价值。
原文: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}}"/>
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>
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>
以上是关于WPF StringFormat 格式化文本的主要内容,如果未能解决你的问题,请参考以下文章
Binding 中的 WPF StringFormat 在后面的代码中不起作用