You can use the TextBox.ExentWidth property to find the horizontal size of the scrollable content and the TextBox.ViewportWidth property to get the size of viewport.
See hereThere are many options which you can take to set the tooltip based on the above information,
- On MouseHover event of the textbox you can compare the 2 and set the tooptip from code
- In XAML, you can use bind the ToolTip's text using a value conveter.
See here- Using Style triggers also (I know this is possible but just don't know the semnatics for it, so kept it as last option). You can use this option and set this particular behavior application wide.
Hope this helps