Canvas
Occasionally, it can be necessary to take complete control of the
precise positioning of every element. For example, when you want to
build an image out of graphical elements, the positioning of the
elements is dictated by the picture you are creating, not by any set of
automated layout rules. For these scenarios, you can use a Canvas
.
Canvas
is the simplest of the
panels. It allows the location of child elements to be specified
precisely relative to the edges of the canvas. The Canvas
doesn't really do any layout at all; it
simply puts things where you tell it to. Also, Canvas
will not size elements to fill the
available space—all its children are sized to content.
Warning
If you are accustomed to working with fixed layout systems such
as those offered by Visual Basic 6, MFC, and the most basic way of
using Windows Forms, the Canvas
will seem familiar and natural. However, it is strongly recommended
that you avoid it unless you really need this absolute control. The
automatic layout provided by the other panels will make your life much
easier because they can adapt to changes in text and font. They also
make it far simpler to produce resizable user interfaces. Moreover,
localization tends to be much easier with resizable user interfaces,
because different languages tend to produce strings with substantially
different lengths. Don't opt for the Canvas
simply because it seems
familiar.
When using a Canvas
, you must specify the location of each child element. If you don't, all ...
Get Programming WPF, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.