在绑定数据源的时候,常常需要将数据库中的日期格式转变为用户友好的日期格式,例如xxxx年xx月xx日。
这么一个常用的小技巧,却折腾了个把小时。在网上搜索了下答案,最多的写法如下:
<TextBox Name="txtCreateTime" HorizontalAlignment="Left" Width="170" Height="24" VerticalAlignment="Top" Background="White">
<TextBox.Text>
<Binding Path="CreateTime" StringFormat="{}{0:yyyy-MM-dd HH:mm}"/>
</TextBox.Text>
</TextBox>
结果编译后出现错误: Unexpected Token after end of Markup Extension.仔细检查了源码好几遍,最终还是求助于强大的google,发现有人说3.5后关于stringformat的语法解析已经发生改变了,
正确的写法应该是:
<TextBox Name="txtCreateTime" HorizontalAlignment="Left" Width="170" Height="24" VerticalAlignment="Top" Background="White"> <TextBox.Text> <Binding Path="CreateTime" StringFormat="\{0:yyyy-MM-dd HH:mm\}"/> </TextBox.Text> </TextBox>