22

I have a user control who's root element is a Grid.

I also have have a ContentControl that serves as a placeholder for some text that is filled when data is loaded. This control can be moved around within the user control and so it's position can be anywhere.

If the text is too long to fit within the root Grid of the user control, I want to reduce the font size of the ContentControl until the text fits.

My problem is that I can't seem to find an event that I can handle to do this process. I tried using the ContentControl.LayoutUpdated event;however, the sender parameter for this always appears to be nothing...which is really not helpful!

I am really looking forward to any advise on how to achieve this.

Thank you

-Frinny

1
  • 5
    You could surround the ContentControl with a ViewBox that will scale the ContentControl to fit in the grid. Is this an option? Commented Feb 14, 2013 at 18:43

1 Answer 1

45

Wrapping your ContentControl in a Viewbox set to only scale down will do this for you:

<Viewbox StretchDirection="DownOnly" Stretch="Uniform">
    <ContentControl Content="Some Text"/>
</Viewbox>
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.