我能夠將我的數據源綁定到顯示文本的文本塊。但是,如果選中複選框foo的值,我想將Fontweight設置爲粗體。我正在嘗試使用IMultiValueConverter來完成此操作,但迄今爲止沒有運氣。任何想法,我做錯了什麼?如何在同一個WPF控件上綁定多個屬性?
<CheckBox Name="foo"/>
<TextBlock Name="bar" Text="{Binding Path=Name}">
<TextBlock.FontWeight>
<MultiBinding Converter="{StaticResource FontConverter}">
<Binding RelativeSource="{RelativeSource self}" Path="???"/>
<Binding ElementName="???" />
</MultiBinding>
</TextBlock.FontWeight>
</TextBlock>
和轉換器類(就硬總是對現在回到粗體)
Public Class FontConverter
Implements IMultiValueConverter
Public Function Convert(values() As Object, targetType As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object Implements System.Windows.Data.IMultiValueConverter.Convert
Return "Bold"
End Function
Public Function ConvertBack(value As Object, targetTypes() As System.Type, parameter As Object, culture As System.Globalization.CultureInfo) As Object() Implements System.Windows.Data.IMultiValueConverter.ConvertBack
Return nothing
End Function
End Class
哦噓,當我寫我的回答你必須貼有沒有代碼示例一個不完整的答案。發佈後,我發現你已經更新了你的代碼示例。哦,+1,用於指出DP優先級併發布我做過的同樣的事情:) – Rachel 2012-01-12 17:11:50
工作得很好。 TY2 @Rachel – WhiskerBiscuit 2012-01-12 17:16:08
@Rachel:之前我們談過這個,代碼是*不*必需的,我甚至不確定爲什麼我這次還添加了一些。畢竟經驗表明,人們在嘗試添加代碼時經常犯錯誤(正如你在這裏所做的那樣,如果你注意到的話)。 – 2012-01-12 17:18:18