9 implementations of IArrangedElement
System.Windows.Forms (9)
System\Windows\Forms\Application.ParkingWindow.cs (1)
14internal sealed class ParkingWindow : ContainerControl, IArrangedElement
System\Windows\Forms\Control.cs (1)
46IArrangedElement,
System\Windows\Forms\Controls\ToolStrips\ToolStrip.cs (1)
25public partial class ToolStrip : ScrollableControl, IArrangedElement, ISupportToolStripPanel
System\Windows\Forms\Controls\ToolStrips\ToolStripItem.cs (1)
26IArrangedElement,
System\Windows\Forms\Controls\ToolStrips\ToolStripOverflow.cs (1)
9public partial class ToolStripOverflow : ToolStripDropDown, IArrangedElement
System\Windows\Forms\Controls\ToolStrips\ToolStripPanel.cs (1)
13public partial class ToolStripPanel : ContainerControl, IArrangedElement
System\Windows\Forms\Controls\ToolStrips\ToolStripPanelRow.cs (1)
15public partial class ToolStripPanelRow : Component, IArrangedElement
System\Windows\Forms\Layout\ArrangedElement.cs (1)
11internal abstract class ArrangedElement : Component, IArrangedElement
System\Windows\Forms\Scrolling\ScrollableControl.cs (1)
14public partial class ScrollableControl : Control, IArrangedElement
264 references to IArrangedElement
System.Windows.Forms (264)
System\Windows\Forms\Application.ParkingWindow.cs (2)
137void IArrangedElement.PerformLayout(IArrangedElement affectedElement, string? affectedProperty) { }
System\Windows\Forms\Control.cs (8)
12563ArrangedElementCollection IArrangedElement.Children => ChildControls ?? ArrangedElementCollection.Empty; 12565IArrangedElement? IArrangedElement.Container 12574bool IArrangedElement.ParticipatesInLayout => GetState(States.Visible); 12576void IArrangedElement.PerformLayout(IArrangedElement affectedElement, string? affectedProperty) 12581PropertyStore IArrangedElement.Properties 12587void IArrangedElement.SetBounds(Rectangle bounds, BoundsSpecified specified)
System\Windows\Forms\Controls\ToolStrips\StatusStrip.cs (2)
387if (overflow || ((IArrangedElement)item).ParticipatesInLayout) 423if (((IArrangedElement)item).ParticipatesInLayout)
System\Windows\Forms\Controls\ToolStrips\ToolStrip.cs (11)
877if (((IArrangedElement)item).ParticipatesInLayout) 2269internal static Size GetPreferredSizeHorizontal(IArrangedElement container, Size proposedConstraints) 2285if (((IArrangedElement)item).ParticipatesInLayout) 2332internal static Size GetPreferredSizeVertical(IArrangedElement container) 2344if (((IArrangedElement)item).ParticipatesInLayout) 3201if (!HasVisibleItems && e.Item is not null && ((IArrangedElement)e.Item).ParticipatesInLayout) 4271if (((IArrangedElement)item).ParticipatesInLayout) 4336if (((IArrangedElement)item).ParticipatesInLayout) 4654ArrangedElementCollection IArrangedElement.Children 4659void IArrangedElement.SetBounds(Rectangle bounds, BoundsSpecified specified) 4664bool IArrangedElement.ParticipatesInLayout
System\Windows\Forms\Controls\ToolStrips\ToolStripControlHost.cs (3)
584bool controlVisibleStateFlag = ((IArrangedElement)ControlInternal).ParticipatesInLayout; 585bool itemVisibleStateFlag = ((IArrangedElement)(this)).ParticipatesInLayout; 643if (_control is not IArrangedElement element)
System\Windows\Forms\Controls\ToolStrips\ToolStripDropDownMenu.ToolStripDropDownLayoutEngine.cs (1)
15internal override Size GetPreferredSize(IArrangedElement container, Size proposedConstraints)
System\Windows\Forms\Controls\ToolStrips\ToolStripItem.cs (9)
961ArrangedElementCollection IArrangedElement.Children => s_emptyChildCollection; 966IArrangedElement? IArrangedElement.Container => ParentInternal ?? Owner; 968Rectangle IArrangedElement.DisplayRectangle => Bounds; 970bool IArrangedElement.ParticipatesInLayout 980PropertyStore IArrangedElement.Properties => Properties; 982void IArrangedElement.SetBounds(Rectangle bounds, BoundsSpecified specified) 989void IArrangedElement.PerformLayout(IArrangedElement container, string? propertyName)
System\Windows\Forms\Controls\ToolStrips\ToolStripMenuItem.cs (1)
535menuItem.Visible = ((IArrangedElement)this).ParticipatesInLayout;
System\Windows\Forms\Controls\ToolStrips\ToolStripOverflow.cs (7)
55ArrangedElementCollection IArrangedElement.Children 60IArrangedElement? IArrangedElement.Container 65bool IArrangedElement.ParticipatesInLayout 70PropertyStore IArrangedElement.Properties 75void IArrangedElement.SetBounds(Rectangle bounds, BoundsSpecified specified) 138if (((IArrangedElement)item).ParticipatesInLayout)
System\Windows\Forms\Controls\ToolStrips\ToolStripPanel.cs (2)
488LayoutTransaction.DoLayout(draggedControl.ToolStripPanelRow, e.AffectedComponent as IArrangedElement, e.AffectedProperty); 1121ArrangedElementCollection IArrangedElement.Children => RowsInternal;
System\Windows\Forms\Controls\ToolStrips\ToolStripPanel.ToolStripPanelControlCollection.XYComparer.cs (3)
13public class XYComparer : IComparer<IArrangedElement> 16public int Compare(IArrangedElement? first, IArrangedElement? second)
System\Windows\Forms\Controls\ToolStrips\ToolStripPanel.ToolStripPanelControlCollection.YXComparer.cs (3)
13public class YXComparer : IComparer<IArrangedElement> 17public int Compare(IArrangedElement? first, IArrangedElement? second)
System\Windows\Forms\Controls\ToolStrips\ToolStripPanelCell.cs (2)
83public IArrangedElement InnerElement 138protected override IArrangedElement? GetContainer()
System\Windows\Forms\Controls\ToolStrips\ToolStripPanelRow.cs (13)
311((IArrangedElement)this).PerformLayout(this, PropertyNames.Size); 355IArrangedElement element = Cells[i]; 621((IArrangedElement)this).PerformLayout(this, null); 625ArrangedElementCollection IArrangedElement.Children 636IArrangedElement IArrangedElement.Container 644Rectangle IArrangedElement.DisplayRectangle 654bool IArrangedElement.ParticipatesInLayout 662PropertyStore IArrangedElement.Properties 670Size IArrangedElement.GetPreferredSize(Size constrainingSize) 687void IArrangedElement.SetBounds(Rectangle bounds, BoundsSpecified specified) 693void IArrangedElement.PerformLayout(IArrangedElement container, string? propertyName)
System\Windows\Forms\Controls\ToolStrips\ToolStripPanelRow.HorizontalRowManager.cs (1)
26Rectangle displayRect = ((IArrangedElement)Row).DisplayRectangle;
System\Windows\Forms\Controls\ToolStrips\ToolStripPanelRow.VerticalRowManager.cs (1)
27Rectangle displayRect = ((IArrangedElement)Row).DisplayRectangle;
System\Windows\Forms\Controls\ToolStrips\ToolStripSplitStackLayout.cs (7)
71if (!((IArrangedElement)item).ParticipatesInLayout) 121if (!((IArrangedElement)item).ParticipatesInLayout) 153internal override Size GetPreferredSize(IArrangedElement container, Size proposedConstraints) 180private protected override bool LayoutCore(IArrangedElement container, LayoutEventArgs layoutEventArgs) 263if (!((IArrangedElement)item).ParticipatesInLayout) 405if (!((IArrangedElement)item).ParticipatesInLayout) 571if (!((IArrangedElement)item).ParticipatesInLayout)
System\Windows\Forms\Form.cs (1)
4210if (this is IArrangedElement form)
System\Windows\Forms\Layout\ArrangedElement.cs (9)
14private IArrangedElement? _parent; 35ArrangedElementCollection IArrangedElement.Children 40IArrangedElement? IArrangedElement.Container 93public virtual IArrangedElement? Parent 113PropertyStore IArrangedElement.Properties 148protected abstract IArrangedElement? GetContainer(); 159public virtual void PerformLayout(IArrangedElement container, string? propertyName) 171((IArrangedElement)this).PerformLayout(this, PropertyNames.Size);
System\Windows\Forms\Layout\ArrangedElementCollection.cs (5)
16internal ArrangedElementCollection(List<IArrangedElement> innerList) => InnerList = innerList; 18private ArrangedElementCollection(int size) => InnerList = new List<IArrangedElement>(size); 20private protected List<IArrangedElement> InnerList { get; } 22internal virtual IArrangedElement this[int index] => InnerList[index]; 56private protected void MoveElement(IArrangedElement element, int fromIndex, int toIndex)
System\Windows\Forms\Layout\CommonProperties.cs (49)
54internal static void ClearMaximumSize(IArrangedElement element) => element.Properties.RemoveValue(s_maximumSizeProperty); 63/// property and not calling base. If <see cref="GetAutoSize(IArrangedElement)"/> is false, a layout engine will 67internal static bool GetAutoSize(IArrangedElement element) 84internal static Padding GetMargin(IArrangedElement element) 97internal static Size GetMaximumSize(IArrangedElement element, Size defaultMaximumSize) 110internal static Size GetMinimumSize(IArrangedElement element, Size defaultMinimumSize) 133internal static Padding GetPadding(IArrangedElement element, Padding defaultPadding) 148/// See <see cref="UpdateSpecifiedBounds(IArrangedElement, int, int, int, int)"/>. 151internal static Rectangle GetSpecifiedBounds(IArrangedElement element) 165internal static void ResetPadding(IArrangedElement element) => element.Properties.RemoveValue(s_paddingProperty); 170internal static void SetAutoSize(IArrangedElement element, bool value) 189internal static void SetMargin(IArrangedElement element, Padding value) 203internal static void SetMaximumSize(IArrangedElement element, Size value) 225internal static void SetMinimumSize(IArrangedElement element, Size value) 249/// See <see cref="GetPadding(IArrangedElement, Padding)"/> for more details. NOTE: It is the callers 253internal static void SetPadding(IArrangedElement element, Padding value) 289internal static void UpdateSpecifiedBounds(IArrangedElement element, int x, int y, int width, int height, BoundsSpecified specified) 339internal static void UpdateSpecifiedBounds(IArrangedElement element, int x, int y, int width, int height) 350internal static void xClearPreferredSizeCache(IArrangedElement element) 357/// Clears all the caching for an <see cref="IArrangedElement"/> hierarchy. Typically done in dispose. 359internal static void xClearAllPreferredSizeCaches(IArrangedElement start) 380internal static Size xGetPreferredSizeCache(IArrangedElement element) 391/// Sets a control's preferred size. See <see cref="xGetPreferredSizeCache(IArrangedElement)"/>. 393internal static void xSetPreferredSizeCache(IArrangedElement element, Size value) 412internal static AutoSizeMode GetAutoSizeMode(IArrangedElement element) 423internal static bool GetNeedsDockAndAnchorLayout(IArrangedElement element) 441internal static bool GetNeedsAnchorLayout(IArrangedElement element) 458internal static bool GetNeedsDockLayout(IArrangedElement element) 476internal static bool GetSelfAutoSizeInDefaultLayout(IArrangedElement element) 489internal static void SetAutoSizeMode(IArrangedElement element, AutoSizeMode mode) 498/// See <see cref="GetSelfAutoSizeInDefaultLayout(IArrangedElement)"/> comments. 500internal static bool ShouldSelfSize(IArrangedElement element) 520/// See <see cref="GetSelfAutoSizeInDefaultLayout(IArrangedElement)"/> comments. 522internal static void SetSelfAutoSizeInDefaultLayout(IArrangedElement element, bool value) 534/// Do not use this. Use <see cref="DefaultLayout.GetAnchor(IArrangedElement)"/>. 537internal static AnchorStyles xGetAnchor(IArrangedElement element) 554internal static bool xGetAutoSizedAndAnchored(IArrangedElement element) 573internal static DockStyle xGetDock(IArrangedElement element) 592internal static void xSetAnchor(IArrangedElement element, AnchorStyles value) 611internal static void xSetDock(IArrangedElement element, DockStyle value) 645internal static bool GetFlowBreak(IArrangedElement element) 655internal static void SetFlowBreak(IArrangedElement element, bool value) 679internal static Size GetLayoutBounds(IArrangedElement element) 694/// The <see cref="TableLayout"/> engine now calls <see cref="SetLayoutBounds(IArrangedElement, Size)"/> when it 702internal static void SetLayoutBounds(IArrangedElement element, Size value) 710internal static bool HasLayoutBounds(IArrangedElement element) 723/// CAREFUL: this is a copy of the state. You need to <see cref="SetLayoutState(IArrangedElement, BitVector32)"/> 727internal static BitVector32 GetLayoutState(IArrangedElement element) => 730internal static void SetLayoutState(IArrangedElement element, BitVector32 state) =>
System\Windows\Forms\Layout\DefaultLayout.cs (39)
24private static void LayoutAutoSizedControls(IArrangedElement container) 29IArrangedElement element = children[i]; 78private static Rectangle GetGrowthBounds(IArrangedElement element, Size newSize) 109private static GrowthDirection GetGrowthDirection(IArrangedElement element) 150private static Rectangle GetAnchorDestination(IArrangedElement element, Rectangle displayRect, bool measureOnly) 158private static Rectangle ComputeAnchoredBoundsV2(IArrangedElement element, Rectangle displayRectangle) 237private static Rectangle ComputeAnchoredBounds(IArrangedElement element, Rectangle displayRect, bool measureOnly) 343internal static bool UseAnchorLayoutV2(IArrangedElement element) 350private static void LayoutAnchoredControls(IArrangedElement container) 363IArrangedElement element = children[i]; 374private static Size LayoutDockedControls(IArrangedElement container, bool measureOnly) 383IArrangedElement? mdiClient = null; 390IArrangedElement element = children[i]; 484private static void TryCalculatePreferredSizeDockedControl(IArrangedElement element, Rectangle newElementBounds, bool measureOnly, ref Size preferredSize, ref Rectangle remainingBounds) 537private static Size GetVerticalDockedSize(IArrangedElement element, Size remainingSize, bool measureOnly) 554private static Size GetHorizontalDockedSize(IArrangedElement element, Size remainingSize, bool measureOnly) 571private static Size xGetDockedSize(IArrangedElement element, Size constraints) 590private protected override bool LayoutCore(IArrangedElement container, LayoutEventArgs args) 598private static bool TryCalculatePreferredSize(IArrangedElement container, bool measureOnly, out Size preferredSize) 615IArrangedElement element = children[i]; 710private static void UpdateAnchorInfo(IArrangedElement element) 890public static AnchorStyles GetAnchor(IArrangedElement element) => CommonProperties.xGetAnchor(element); 892public static void SetAnchor(IArrangedElement element, AnchorStyles value) 931public static DockStyle GetDock(IArrangedElement element) => CommonProperties.xGetDock(element); 933public static void SetDock(IArrangedElement element, DockStyle value) 973public static void ScaleAnchorInfo(IArrangedElement element, SizeF factor) 1003private static Rectangle GetCachedBounds(IArrangedElement element) 1020private static bool HasCachedBounds(IArrangedElement? container) => 1023private static void ApplyCachedBounds(IArrangedElement container) 1050IArrangedElement element = (IArrangedElement)entry.Key; 1070private static void ClearCachedBounds(IArrangedElement container) => container.Properties.RemoveValue(s_cachedBoundsProperty); 1072private static void SetCachedBounds(IArrangedElement element, Rectangle bounds) 1085internal static AnchorInfo? GetAnchorInfo(IArrangedElement element) => 1088internal static void SetAnchorInfo(IArrangedElement element, AnchorInfo? value) => 1091private protected override void InitLayoutCore(IArrangedElement element, BoundsSpecified specified) 1103internal override Size GetPreferredSize(IArrangedElement container, Size proposedBounds) 1111private static Size GetAnchorPreferredSize(IArrangedElement container) 1119IArrangedElement element = container.Children[i];
System\Windows\Forms\Layout\FlowLayout.BottomUpProxy.cs (1)
12public BottomUpProxy(IArrangedElement container) : base(container)
System\Windows\Forms\Layout\FlowLayout.ContainerProxy.cs (3)
30private readonly IArrangedElement _container; 35public ContainerProxy(IArrangedElement container) 87public IArrangedElement Container => _container;
System\Windows\Forms\Layout\FlowLayout.cs (9)
15private protected override bool LayoutCore(IArrangedElement container, LayoutEventArgs args) 23internal override Size GetPreferredSize(IArrangedElement container, Size proposedConstraints) 40private static ContainerProxy CreateContainerProxy(IArrangedElement container, FlowDirection flowDirection) => 53private static Size TryCalculatePreferredSize(IArrangedElement container, Rectangle displayRect, bool measureOnly) 281public static bool GetWrapContents(IArrangedElement container) => 284public static void SetWrapContents(IArrangedElement container, bool value) 291public static FlowDirection GetFlowDirection(IArrangedElement container) => 294public static void SetFlowDirection(IArrangedElement container, FlowDirection value) 304private static void Debug_VerifyAlignment(IArrangedElement container, FlowDirection flowDirection)
System\Windows\Forms\Layout\FlowLayout.ElementProxy.cs (2)
17private IArrangedElement? _element; 57public IArrangedElement? Element
System\Windows\Forms\Layout\FlowLayout.RightToLeftProxy.cs (1)
12public RightToLeftProxy(IArrangedElement container) : base(container)
System\Windows\Forms\Layout\FlowLayout.TopDownProxy.cs (1)
17public TopDownProxy(IArrangedElement container) : base(container)
System\Windows\Forms\Layout\IArrangedElement.cs (2)
55void PerformLayout(IArrangedElement affectedElement, string? propertyName); 60IArrangedElement? Container { get; }
System\Windows\Forms\Layout\LayoutEngine.cs (6)
10internal static IArrangedElement CastToArrangedElement(object obj) 12if (obj is not IArrangedElement element) 20internal virtual Size GetPreferredSize(IArrangedElement container, Size proposedConstraints) 32private protected virtual void InitLayoutCore(IArrangedElement element, BoundsSpecified bounds) 36internal virtual void ProcessSuspendedLayoutEventArgs(IArrangedElement container, LayoutEventArgs args) 46private protected virtual bool LayoutCore(IArrangedElement container, LayoutEventArgs layoutEventArgs)
System\Windows\Forms\Layout\LayoutSettings.cs (2)
14internal LayoutSettings(IArrangedElement? owner) 21internal IArrangedElement? Owner { get; }
System\Windows\Forms\Layout\LayoutTransaction.cs (7)
32public LayoutTransaction(Control? controlToLayout, IArrangedElement controlCausingLayout, string? property) 37public LayoutTransaction(Control? controlToLayout, IArrangedElement controlCausingLayout, string? property, bool resumeLayout) 71public static IDisposable CreateTransactionIf(bool condition, Control? controlToLayout, IArrangedElement elementCausingLayout, string? property) 84public static void DoLayout(IArrangedElement? elementToLayout, IArrangedElement? elementCausingLayout, string? property) 102public static void DoLayoutIf(bool condition, IArrangedElement? elementToLayout, IArrangedElement? elementCausingLayout, string? property)
System\Windows\Forms\Layout\LayoutUtils.cs (1)
264internal static AnchorStyles GetUnifiedAnchor(IArrangedElement element)
System\Windows\Forms\Layout\TableLayout.ContainerInfo.cs (4)
35private readonly IArrangedElement _container; 44public ContainerInfo(IArrangedElement container) 64public IArrangedElement Container 242IArrangedElement element = children[i];
System\Windows\Forms\Layout\TableLayout.cs (21)
58internal static TableLayoutSettings CreateSettings(IArrangedElement owner) 63internal override void ProcessSuspendedLayoutEventArgs(IArrangedElement container, LayoutEventArgs args) 95private protected override bool LayoutCore(IArrangedElement container, LayoutEventArgs args) 135internal override Size GetPreferredSize(IArrangedElement container, Size proposedConstraints) 208private static void EnsureRowAndColumnAssignments(IArrangedElement container, ContainerInfo containerInfo, bool doNotCache) 711IArrangedElement element = layoutInfo.Element; 837IArrangedElement element = layoutInfo.Element; 864private static Size GetElementSize(IArrangedElement element, Size proposedConstraints) => 1199IArrangedElement element = layoutInfo.Element; 1291internal static IArrangedElement? GetControlFromPosition(IArrangedElement container, int column, int row) 1325internal static TableLayoutPanelCellPosition GetPositionFromControl(IArrangedElement? container, IArrangedElement? child) 1351internal static LayoutInfo GetLayoutInfo(IArrangedElement element) 1362internal static void SetLayoutInfo(IArrangedElement element, LayoutInfo value) 1376internal static ContainerInfo GetContainerInfo(IArrangedElement container) 1390private static void Debug_VerifyAssignmentsAreCurrent(IArrangedElement container, ContainerInfo containerInfo) 1393Dictionary<IArrangedElement, LayoutInfo> oldLayoutInfo = []; 1401IArrangedElement element = children[i]; 1451private static void Debug_VerifyNoOverlapping(IArrangedElement container) 1459foreach (IArrangedElement element in container.Children)
System\Windows\Forms\Layout\TableLayout.LayoutInfo.cs (2)
15public LayoutInfo(IArrangedElement element) 22public IArrangedElement Element { get; }
System\Windows\Forms\Panels\FlowLayoutSettings.cs (3)
12internal FlowLayoutSettings(IArrangedElement owner) 49IArrangedElement element = LayoutEngine.CastToArrangedElement(child); 60IArrangedElement element = LayoutEngine.CastToArrangedElement(child);
System\Windows\Forms\Panels\TableLayoutPanel\TableLayoutColumnStyleCollection.cs (1)
11internal TableLayoutColumnStyleCollection(IArrangedElement Owner) : base(Owner) { }
System\Windows\Forms\Panels\TableLayoutPanel\TableLayoutRowStyleCollection.cs (1)
11internal TableLayoutRowStyleCollection(IArrangedElement Owner) : base(Owner) { }
System\Windows\Forms\Panels\TableLayoutPanel\TableLayoutSettings.cs (11)
38internal TableLayoutSettings(IArrangedElement owner) 244IArrangedElement element = LayoutEngine.CastToArrangedElement(control); 260IArrangedElement element = LayoutEngine.CastToArrangedElement(control); 282IArrangedElement element = LayoutEngine.CastToArrangedElement(control); 298IArrangedElement element = LayoutEngine.CastToArrangedElement(control); 326IArrangedElement element = LayoutEngine.CastToArrangedElement(control); 387IArrangedElement element = LayoutEngine.CastToArrangedElement(control); 429IArrangedElement element = LayoutEngine.CastToArrangedElement(control); 455internal IArrangedElement? GetControlFromPosition(int column, int row) 460internal TableLayoutPanelCellPosition GetPositionFromControl(IArrangedElement? element) 504foreach (IArrangedElement element in Owner.Children)
System\Windows\Forms\Panels\TableLayoutPanel\TableLayoutStyle.cs (2)
13private IArrangedElement? _owner; 65internal IArrangedElement? Owner
System\Windows\Forms\Panels\TableLayoutPanel\TableLayoutStyleCollection.cs (4)
14private IArrangedElement? _owner; 17internal TableLayoutStyleCollection(IArrangedElement? owner) 22internal IArrangedElement? Owner => _owner; 147internal void EnsureOwnership(IArrangedElement owner)
System\Windows\Forms\Scrolling\ScrollableControl.cs (1)
214Rectangle IArrangedElement.DisplayRectangle