首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WPF多绑定字符串格式日期

WPF多绑定字符串格式日期
EN

Stack Overflow用户
提问于 2011-01-27 23:11:44
回答 2查看 9.2K关注 0票数 8

我正在尝试使用多重绑定在我的网格中组合两个信息字段,多重绑定工作得很好,但当我尝试格式化其中一个字段时遇到了问题,这是绑定中的一个日期。

这两个字段是用户的首字母缩写,即EGJ和输入日期,希望获得一个类似于"EGJ - 01/01/2011“的组合字段

下面是我使用现有XAML的地方

代码语言:javascript
运行
复制
<tk:DataGridTextColumn.Binding>
  <MultiBinding StringFormat=" {0} - {}{1:dd/MM/yyyy}">
    <Binding Path="UserInitials" />
    <Binding Path="EntryDate" />
  </MultiBinding>
</tk:DataGridTextColumn.Binding>   

如有任何帮助或建议,我们将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-27 23:26:09

只见树木不见森林

简单地删除空大括号就解决了我的问题。

代码语言:javascript
运行
复制
<tk:DataGridTextColumn.Binding>
  <MultiBinding StringFormat=" {0} - {1:dd/MM/yyyy}">
    <Binding Path="UserInitials" />
    <Binding Path="EntryDate" />
  </MultiBinding>
</tk:DataGridTextColumn.Binding>

感谢每一位花时间去看的人。

票数 19
EN

Stack Overflow用户

发布于 2012-07-24 07:36:54

除非您打算在格式化的值中使用前导空格,否则您应该改用此绑定:

代码语言:javascript
运行
复制
<tk:DataGridTextColumn.Binding> 
  <MultiBinding StringFormat="{}{0} - {1:dd/MM/yyyy}"> 
    <Binding Path="UserInitials" />
    <Binding Path="EntryDate" />
  </MultiBinding>
</tk:DataGridTextColumn.Binding>

如果StringFormat以左大括号{开头,则XAML解析器要求您使用一对大括号{}对其进行转义。否则,解析器会感到困惑,因为大括号也用在标记扩展的语法中。

详细信息可以在{} Escape Sequence / Markup Extension的XAML文档中找到。

也许您最初在格式字符串中正确地放置了转义序列,并且移动了一些东西,导致在错误的位置出现了一对空的大括号?

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4818090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档