In your main window, trap the "size" event and calculate sizes and orientation

Then broadcast a "user" event which will be handled by each control needing to adjust size

The "user" handler in each control can be the same, if you use data-driven techniques such as in the sample

A question we're asked from time to time is, "How can I make a responsive UI in 8th"? That is to say, how can you make the UI of your application change layout in response to size and orientation changes?The attached source file demonstrates one way in which it can be done, using "bounds". The technique is as follows:In our sample, we store an array of two "bounds" strings inside each component which needs to adjust size. Inside the "user" handler we are given a 0 for "portrait" and a "1" for landscape -- so we don't have to recalculate or look up those values. Rather, we simply get the bounds string appropriate for this component and orientation and apply it.This is an elegant solution which can be used for many other things (such as, for example, L10N -- by using the "user" event when language is changed, and suitably modifying an item's label).Note: we added a somewhat more verbose explanation on our samples page