Share via


SplitterPanel Class

Definition

Represents an oriented panel of items that are stacked, but sized to fit on the screen.

public ref class SplitterPanel : System::Windows::Controls::Panel
public class SplitterPanel : System.Windows.Controls.Panel
type SplitterPanel = class
    inherit Panel
Public Class SplitterPanel
Inherits Panel
Inheritance
SplitterPanel

Remarks

This panel has layout similar to a grid. Each child UIElement has an attached SplitterLength, which is either a "Stretch" or "Fill" value. To understand the layout, it's best to consider two examples (plain numbers indicate a Stretch length, * numbers indicate Fill)

1. Consider that there are 3 elements with SplitterLengths of [100|*|200] with horizontal orientation, and that the panel is 500x100 in size. We calculate that the stretch items require 300 units of space, and that there is 1 star item requiring 1 filled unit of space. Since there are 300 units of leftover space, the fill item is given that width. The stretch items are given their desired stretch length. 2. Consider that there are 2 elements with SplitterLengths of [100|150] with horizontal orientation, and that the panel is 500x100 in size. Since there are no fill elements, we stretch the items to take up the entire space, keeping the ratios of their sizes constant. Thus, the items are arraged with widths of 200 and 300 to fill the 500 available units of space. 3. Consider that there are 3 elements with SplitterLengths of [1000|*|1500] with horizontal orientation, and that the panel is 500x100 in size. Since the stretch items are too large to fit in the panel as is, the fill item is reduced to size 0. Then, the stretch items are scaled as in (2), receiving 200 and 300 units respectively.

Constructors

SplitterPanel()

Microsoft internal use only.

Fields

ActualSplitterLengthProperty

Microsoft internal use only.

IndexProperty

Microsoft internal use only.

IsFirstProperty

Microsoft internal use only.

IsLastProperty

Microsoft internal use only.

MaximumLengthProperty

Microsoft internal use only.

MinimumLengthProperty

Microsoft internal use only.

OrientationProperty

Microsoft internal use only.

ShowResizePreviewProperty

Microsoft internal use only.

SplitterLengthProperty

Microsoft internal use only.

Properties

Orientation

Microsoft internal use only.

ShowResizePreview

Microsoft internal use only.

Attached Properties

ActualSplitterLength

Microsoft internal use only.

Index

Microsoft internal use only.

IsFirst

Microsoft internal use only.

IsLast

Microsoft internal use only.

MaximumLength

Microsoft internal use only.

MinimumLength

Microsoft internal use only.

SplitterLength

Microsoft internal use only.

Methods

ArrangeOverride(Size)

Arranges the elements based on attached arrangement information calculated in Measure.

GetActualSplitterLength(UIElement)

Microsoft internal use only.

GetIndex(UIElement)

Microsoft internal use only.

GetIsFirst(UIElement)

Microsoft internal use only.

GetIsLast(UIElement)

Microsoft internal use only.

GetMaximumLength(UIElement)

Microsoft internal use only.

GetMinimumLength(UIElement)

Microsoft internal use only.

GetSplitterLength(UIElement)

Microsoft internal use only.

Measure(Size, Orientation, IEnumerable<SplitterMeasureData>, Boolean)

This method is used to measure and arrange a set of child elements. This method is used both for the normal Measure/Arrange pass, and also to determine where an item would show up if it were added to this panel. This is used for docking previews.

MeasureOverride(Size)

Microsoft internal use only.

SetActualSplitterLength(UIElement, Double)

Microsoft internal use only.

SetIndex(UIElement, Int32)

Microsoft internal use only.

SetIsFirst(UIElement, Boolean)

Microsoft internal use only.

SetIsLast(UIElement, Boolean)

Microsoft internal use only.

SetMaximumLength(UIElement, Double)

Microsoft internal use only.

SetMinimumLength(UIElement, Double)

Microsoft internal use only.

SetSplitterLength(UIElement, SplitterLength)

Microsoft internal use only.

Applies to