4
如果bound屬性的值爲null,我想更改TextBlock的樣式。我爲要顯示的TextBlock的TargetNullValue指定了一個值,但我想用另一種樣式顯示它。我該怎麼做。爲TargetNullValue更改TextBlock的樣式
我目前的解決方案是使用兩個TextBlocks並控制兩者的可見性,以在原始樣式和替代樣式之間切換。但是這個解決方案不可行,因爲我需要複製每個TextBlock,以顯示替代版本。
目前的解決方案:
<TextBlock Visibility="{Binding MyText, Converter={StaticResource nullToVisibilityConverter}}"
FontSize="20"
Foreground="Black"
Text="{Binding MyText}" />
<TextBlock Visibility="{Binding MyText, Converter={StaticResource nullToVisibilityConverter}}"
FontSize="20"
FontStyle="Italic"
Foreground="Gray"
Text="None" />
所需的解決方案:
<TextBlock FontSize="20"
Foreground="Black"
Text="{Binding MyText, TargetNullValue='None'}" />
<!-- plus any styles, templates or triggers, to change style of TextBlock for TargetNullValue -->
如何使用可選擇性的風格爲TargetNullValue。歡迎任何使用樣式,觸發器或模板的解決方案。