Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

SnapLine Class

Represents the horizontal and vertical line segments that are dynamically created in the user interface (UI) to assist in the design-time layout of controls in a container. This class cannot be inherited.

Namespace: System.Windows.Forms.Design.Behavior
Assembly: System.Design (in system.design.dll)

public sealed class SnapLine
public final class SnapLine
public final class SnapLine
Not applicable.

The following table lists the common modes that visual design tools support to assist you with positioning and sizing controls on a design surface.

Mode

Description

Freeform

Enables you to freely lay out controls.

Grid

Displays a static overlaid grid that assists you in laying out controls.

Snapline

Displays guide lines that assist you in laying out the container's controls relative to each other. Snaplines originate from controls and their container.

The SnapLine class and related types help support the Snapline mode.

Snaplines are generated dynamically and automatically as a control edge moves near another control or near the boundaries of its container. This can occur when a control is added from the toolbox, or moved or resized by mouse operations or keyboard commands. Controls typically have both horizontal and vertical snaplines defined; for rectangular controls, these typically extend from all four edges.

The SnapLine class uses only a few properties to describe each snapline, as shown in the following table.

Property

Description

SnapLineType

Specifies the location and direction of the line with respect to its associated control. Typically, only snaplines of similar types will auto-align to each other.

Offset

Specifies the distance in pixels from the origin, which is the upper-left corner of the control, to where the snapline starts.

Priority

Specifies the relative importance of the snapline. During any given layout decision point, only the snaplines that are active and have the highest priority are displayed.

Filter

Defines custom categories of snaplines. This is an optional string.

IsHorizontal and IsVertical

Indicates whether a snapline has horizontal or vertical orientation, respectively.

The ControlDesigner class stores snaplines for its corresponding control type in the SnapLines property. This base class handling of snaplines will suffice for the majority of controls, as it defines the Left, Right, Top, and Bottom snaplines, which are aligned along the edges of the control. When you are developing a custom control, if this default organization does not suffice, override the SnapLines property of the class derived from ControlDesigner. For example, you may want to align the horizontal snaplines of text-based controls, such as labels, with the top and base lines of the text (instead of the top and bottom edges of the control).

The SnapLineType class cannot be derived from.

There is extensive support for this feature in Visual Studio.

Walkthrough: Arranging Controls on Windows Forms Using Snaplines
Walkthrough: Arranging Controls on Windows Forms Using Snaplines
Walkthrough: Arranging Controls on Windows Forms Using Snaplines
Walkthrough: Arranging Controls on Windows Forms Using Snaplines
Walkthrough: Arranging Controls on Windows Forms Using Snaplines

System.Object
  System.Windows.Forms.Design.Behavior.SnapLine
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.