我一辈子都无法做到这一点。我需要在文本块中显示一对时间跨度对象的hh:mm,但它不起作用。这就是我目前所拥有的:
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}From {0:hh\:mm} to {1:hh\:mm}">
<Binding Path="StartTime"/>
<Binding Path="EndTime"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
文本块显示为空白。我也尝试了以下相同的结果:
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}From {0} to {1}">
<Binding Path="StartTime" StringFormat="hh\:mm"/>
<Binding Path="EndTime" StringFormat="hh\:mm"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
如果我的字符串格式是hust"hh",那么我只得到小时,所以我想我可以用4个部分构建它,但这感觉不太好。感谢您的帮助。
在格式字符串中使用hh':'mm似乎有效:
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}From {0:hh':'mm} to {1:hh':'mm}">
<Binding Path="StartTime"/>
<Binding Path="EndTime"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
此外,这只适用于.NET 4