2
我想知道是否有場景可以使用沒有轉換器的Multibinding - 以及迫使我們使用轉換器的限制。在WPF中使用Multibinding時,您是否需要使用轉換器?
特別是我試圖將字符串綁定到string.format樣式中的另外兩個字符串。
我想知道是否有場景可以使用沒有轉換器的Multibinding - 以及迫使我們使用轉換器的限制。在WPF中使用Multibinding時,您是否需要使用轉換器?
特別是我試圖將字符串綁定到string.format樣式中的另外兩個字符串。
您使用MultiBinding
無需轉換器的最常見情況是,當你有一個字符串格式連接兩個單獨的值
說,例如:
要格式化有名字,最後一部分,你想要格式化它基於區域
<StackPanel>
<TextBlock x:Name="firstName"
Text="John" />
<TextBlock x:Name="lastName"
Text="Wayne" />
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} {1}">
<Binding ElementName="firstName"
Path="Text" />
<Binding ElementName="lastName"
Path="Text" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</StackPanel>
你看到了相當多的使用轉換器的地方,因爲使用MultiBinding
你做同樣的Binding
但你確認m將多個源值格式化爲單個結果而不是單個輸入 - >單個輸出。
你可以有一個綁定採取ConverterParameter
但提供其他的輸入值,你有這樣不能夠提供運行時綁定的值給它,這使得MultiBinding
更適合於要綁定所有的人都多輸入限制。
歸結爲您的用例,如果您想根據您以自定義方式評估的不同輸入類型提供結果,則需要一個Converter(與Binding非常相似)。作爲1個輸入可綁定的值與多個)
它看起來像字符串格式版本只適用於您的元素期望字符串。在某些情況下,您可能必須將多重綁定放入文本塊中。 –