У меня есть TextBlock внутри элемента управления ограниченного размера. Если текст слишком длинный, чтобы поместиться в элемент управления, я хотел бы показать всплывающую подсказку с полным текстом. Это классическое поведение, которое вы наверняка знаете по многим приложениям.
Я пытался использовать конвертер для преобразования ширины TextBlock в видимость подсказки.
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Text}">
<TextBlock.ToolTip>
<ToolTip
DataContext="{TemplateBinding Content}"
Visibility="{Binding Converter={StaticResource visConvert}}">
<TextBlock Text="{Binding Text}"></TextBlock>
</ToolTip>
</TextBlock.ToolTip>
</TextBlock>
</DataTemplate>
</GridViewColumn.CellTemplate>
Проблема в том, что в конвертере:
public object Convert(object value, ...
'value' - элемент DataBound. Я хотел бы, чтобы значением было TextBlock, чтобы наблюдать его ширину и сравнить его с GridViewColumn.Width.