This documentation is archived and is not being maintained.

Layering Objects on Windows Forms

Visual Studio .NET 2003

When creating a complex user interface, or working with a multiple document interface (MDI) form, it is often desirable to layer both controls and child forms so as to create more complex user interfaces. To move and keep track of controls and windows within the context of a group, you manipulate their z-order. Z-order is the visual layering of controls on a form along the form's z-axis (depth). The window at the top of the z-order overlaps all other windows. All other windows overlap the window at the bottom of the z-order.

To layer controls at design time

  • Select a control. On the Format menu, point to Order, and then click Bring To Front or Send To Back.

To layer controls programmatically

  • Use the BringToFront and SendToBack methods to manipulate the z-order of the controls. For example, if a Textbox control, txtFirstName, is underneath another control and you want to have it on top, use the following code:
    ' Visual Basic
    txtFirstName.BringToFront()
    
    // C#
    txtFirstName.BringToFront();
    
    // C++
    txtFirstName->BringToFront();
    

It should also be noted that Windows Forms supports control containment. Control containment involves placing a number of controls within a containing control, such as a number of RadioButton controls within a GroupBox control. You can then layer the controls within the containing control. Moving the group box moves the controls as well, as they are contained inside it.

See Also

Windows Forms Controls | Controls by Category | Arranging Controls on Windows Forms | Labeling Individual Windows Forms Controls and Providing Shortcuts to Them | Controls You Can Use on Windows Forms | Windows Forms Controls by Function

Show: