【发布时间】:2013-12-13 21:25:16
【问题描述】:
我目前正在尝试将 WPF TextBlock 多重绑定到 TimeSpan 属性。
以下作品:
<TextBlock HorizontalAlignment="Right"
VerticalAlignment="Center"
Text="{Binding Path=ImportOperationRuntime, StringFormat='hh\\:mm\\:ss'}" />
不幸的是,使用 MultiBinding 会“破坏” StringFormat 并在旁边显示毫秒(尽管通过 StringFormat 隐藏)。以下这些不起作用:
<TextBlock Grid.Column="6" VerticalAlignment="Center">
<TextBlock.Text>
<MultiBinding StringFormat="Total runtime: {0}">
<Binding Path="ImportOperationRuntime" StringFormat="hh':'mm':'ss" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
<TextBlock Grid.Column="6" VerticalAlignment="Center">
<TextBlock.Text>
<MultiBinding StringFormat="Total runtime: {0}">
<Binding Path="ImportOperationRuntime" StringFormat="hh\:mm\:ss" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
<TextBlock Grid.Column="6" VerticalAlignment="Center">
<TextBlock.Text>
<MultiBinding StringFormat="Total runtime: {0}">
<Binding Path="ImportOperationRuntime" StringFormat="hh\\:mm\\:ss" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
<TextBlock Grid.Column="6" VerticalAlignment="Center">
<TextBlock.Text>
<MultiBinding StringFormat="Total runtime: {0}">
<Binding Path="ImportOperationRuntime" StringFormat="hh:mm:ss" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
在实际的 MultiBinding 中使用相同的 StringFormats 时不起作用(例如:<MultiBinding StringFormat="Total runtime: {0:hh\\:mm\\:ss}">)。
我应该如何构建我的 StringFormat?
【问题讨论】:
标签: c# wpf xaml timespan multibinding