我有一個TextBlock的工具提示,顯示相同的數據,在截斷的情況下。但是,如果TextBlock.Text和工具提示文本綁定的屬性爲空(null或零長度字符串),則工具提示將顯示爲一個小空框。有沒有辦法隱藏這個,並在這種情況下顯示沒有工具提示?如何在Silverlight中隱藏空的工具提示?
<TextBlock Text="{Binding Text}">
<util:ToolTipManager.ToolTip>
<TextBlock TextWrapping="Wrap" Text="{Binding Text}" />
</util:ToolTipManager.ToolTip>
</TextBlock>
我已經加入Visibility="{Binding Text, Converter={StaticResource StringToVisConverter}}"
到TextBlock沒有任何運氣StringToVisibilityConverter
嘗試使用。
我也嘗試實施給出的答案Hide tooltip if binding is null,但似乎特定於他們的設置(或至少我還沒有想出如何適應它成功)。
(ToolTipManager
是從http://www.codeproject.com/Articles/36078/Silverlight-2-0-How-to-use-a-DataBinding-with-the,用來提供數據的工具提示結合。)
編輯:
響應於該評論,這裏是我嘗試了上述相關問題的XAML:
<TextBlock Text="{Binding PointName}">
<local:ToolTipManager.ToolTip>
<Grid>
<TextBlock TextWrapping="Wrap" Text="{Binding PointName}"/>
<Rectangle Fill="Transparent" Visibility="{Binding PointName, Converter={StaticResource StringToVisConverter}}" />
</Grid>
</local:ToolTipManager.ToolTip>
</TextBlock>
這裏是我的字符串能見度轉換器代碼:
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string visible = (string)value;
return (!String.IsNullOrWhiteSpace(visible) ? Visibility.Visible : Visibility.Collapsed);
}
相關:[隱藏工具提示,如果綁定爲空](http://stackoverflow.com/questions/5910994/hide-tooltip-if-binding-is-null) –
你能告訴我你試圖從問題實現的xaml代碼http://stackoverflow.com/questions/5910994/hide-tooltip-if-binding-is-null –
轉換器必須適合你的情況。你可以顯示轉換器的代碼,可能是你錯過了什麼嗎? –