When you are building an application, you don't know the screen resolution of the system where the application will be running. If you design the UI considering small or standard resolution in mind, the UI controls will look very small in a high-resolution monitor. If you do the reverse, with big screens in mind, the user won't see the parts of the screen, if executed on a low-resolution monitor.
Hence, there is a need to create an auto-scaling mechanism, which will take care of different screen resolutions. ViewBox is a very popular control in WPF, which helps you to scale the content to fit the available space based on the size. When you resize the parent, it automatically transforms the content to scale in proportion.
Let's learn how it works, with a simple example, in this recipe.