我有一个TextBlock。当其文本绑定(bind)为:

<Binding Path="Applicant2.Surname"/>

它工作正常,但是我想包含Forenames,因此将绑定(bind)更改为:
<MultiBinding StringFormat="{}{0} {1}">
    <Binding Path="Applicant2.Forenames"/>
    <Binding Path="Applicant2.Surname"/>
</MultiBinding>

这将显示{DependencyProperty.UnsetValue} {DependencyProperty.UnsetValue},直到首次设置该值。

我该如何阻止呢?为什么我没有第一个简单绑定(bind)的问题?

最佳答案

对于多重绑定(bind),您需要添加一个后备值(如果它只是空白),那么您可以简单地执行以下操作:

<MultiBinding StringFormat="{}{0} {1}">
    <Binding Path="Applicant2.Forenames" FallbackValue=""/>
    <Binding Path="Applicant2.Surname" FallbackValue=""/>
</MultiBinding>

关于WPF MultiBinding-UnsetValue问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3139375/

10-09 22:54