如您所知StringFormat對於WPF中的數據表示非常重要。我的問題是如何在WPF中的多重綁定時使用StringFormat?如何在WPF中的多重綁定中使用stringformat XAML
如果我舉一個很簡單的例子:
我們有變數,這是A和B,並10.255555和25.6999999
我們想向他們展示10.2,25.6
其值?
我怎樣才能做到這一點與multibinding?通常它是ValueConverter小菜一碟
關於這個主題的幫助和想法將greately讚賞
如您所知StringFormat對於WPF中的數據表示非常重要。我的問題是如何在WPF中的多重綁定時使用StringFormat?如何在WPF中的多重綁定中使用stringformat XAML
如果我舉一個很簡單的例子:
我們有變數,這是A和B,並10.255555和25.6999999
我們想向他們展示10.2,25.6
其值?
我怎樣才能做到這一點與multibinding?通常它是ValueConverter小菜一碟
關於這個主題的幫助和想法將greately讚賞
剛剛成立的MultiBinding
的StringFormat
財產;使用佔位符({0},{1} ...)在multibinding對於每種結合的,並且包括格式說明如果必要的話(例如,F1與1個十進制數字的十進制數)
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0:F1}{1:F1}">
<Binding Path="A" />
<Binding Path="B" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
的{}
部分開始是格式字符串是轉義序列(否則XAML分析器會認爲{
是標記擴展的開始)
爲了簡化您可以使用兩個TextBlock/Labels來顯示值。
如果您正在使用.NET4,你可以在一個TextBlock
<TextBlock>
<Run Text="{Binding A, StringFormat={}{0:F1}}"/>
<Run Text="{Binding B, StringFormat={}{0:F1}}"/>
</TextBlock>
2'Run's之間將是一個空格。這不像上面提到的'StringFormat =「{} {0:F1} {1:F1}」。即使寫'
如果有人正在尋找「時間格式」這是24小時時鐘的運行內聯元素結合這是我來到這個交:
<TextBlock TextAlignment="Center">
<TextBlock.Text>
<MultiBinding StringFormat="{}{0:HH:mm} - {1:HH:mm}">
<Binding Path="StartTime" />
<Binding Path="EndTime" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
前導0:1:是參照綁定
[0:HH:MM TT]顯示AM/PM
那麼,thx爲你的快速反應,但你可以在你的答案可能嗎? – ibrahimyilmaz
@ibrahimyilmaz,對不起,我認爲代碼是自我解釋的...我添加了一個簡短的解釋。 –