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)
45IArrangedElement,
System\Windows\Forms\Controls\ToolStrips\ToolStrip.cs (1)
24public 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)
12588ArrangedElementCollection IArrangedElement.Children => ChildControls ?? ArrangedElementCollection.Empty; 12590IArrangedElement? IArrangedElement.Container 12599bool IArrangedElement.ParticipatesInLayout => GetState(States.Visible); 12601void IArrangedElement.PerformLayout(IArrangedElement affectedElement, string? affectedProperty) 12606PropertyStore IArrangedElement.Properties 12612void IArrangedElement.SetBounds(Rectangle bounds, BoundsSpecified specified)
System\Windows\Forms\Controls\ToolStrips\StatusStrip.cs (2)
395if (overflow || ((IArrangedElement)item).ParticipatesInLayout) 431if (((IArrangedElement)item).ParticipatesInLayout)
System\Windows\Forms\Controls\ToolStrips\ToolStrip.cs (11)
874if (((IArrangedElement)item).ParticipatesInLayout) 2266internal static Size GetPreferredSizeHorizontal(IArrangedElement container, Size proposedConstraints) 2282if (((IArrangedElement)item).ParticipatesInLayout) 2329internal static Size GetPreferredSizeVertical(IArrangedElement container) 2341if (((IArrangedElement)item).ParticipatesInLayout) 3198if (!HasVisibleItems && e.Item is not null && ((IArrangedElement)e.Item).ParticipatesInLayout) 4272if (((IArrangedElement)item).ParticipatesInLayout) 4337if (((IArrangedElement)item).ParticipatesInLayout) 4650ArrangedElementCollection IArrangedElement.Children 4655void IArrangedElement.SetBounds(Rectangle bounds, BoundsSpecified specified) 4660bool 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); 1113ArrangedElementCollection 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)
85public IArrangedElement InnerElement 140protected 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) 168((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) => 160internal static void ResetPadding(IArrangedElement element) => element.Properties.RemoveValue(s_paddingProperty); 165internal static void SetAutoSize(IArrangedElement element, bool value) 184internal static void SetMargin(IArrangedElement element, Padding value) 198internal static void SetMaximumSize(IArrangedElement element, Size value) 220internal static void SetMinimumSize(IArrangedElement element, Size value) 244/// See <see cref="GetPadding(IArrangedElement, Padding)"/> for more details. NOTE: It is the callers 248internal static void SetPadding(IArrangedElement element, Padding value) 284internal static void UpdateSpecifiedBounds(IArrangedElement element, int x, int y, int width, int height, BoundsSpecified specified) 334internal static void UpdateSpecifiedBounds(IArrangedElement element, int x, int y, int width, int height) 345internal static void xClearPreferredSizeCache(IArrangedElement element) 352/// Clears all the caching for an <see cref="IArrangedElement"/> hierarchy. Typically done in dispose. 354internal static void xClearAllPreferredSizeCaches(IArrangedElement start) 375internal static Size xGetPreferredSizeCache(IArrangedElement element) 386/// Sets a control's preferred size. See <see cref="xGetPreferredSizeCache(IArrangedElement)"/>. 388internal static void xSetPreferredSizeCache(IArrangedElement element, Size value) 407internal static AutoSizeMode GetAutoSizeMode(IArrangedElement element) 418internal static bool GetNeedsDockAndAnchorLayout(IArrangedElement element) 436internal static bool GetNeedsAnchorLayout(IArrangedElement element) 453internal static bool GetNeedsDockLayout(IArrangedElement element) 471internal static bool GetSelfAutoSizeInDefaultLayout(IArrangedElement element) 484internal static void SetAutoSizeMode(IArrangedElement element, AutoSizeMode mode) 493/// See <see cref="GetSelfAutoSizeInDefaultLayout(IArrangedElement)"/> comments. 495internal static bool ShouldSelfSize(IArrangedElement element) 515/// See <see cref="GetSelfAutoSizeInDefaultLayout(IArrangedElement)"/> comments. 517internal static void SetSelfAutoSizeInDefaultLayout(IArrangedElement element, bool value) 529/// Do not use this. Use <see cref="DefaultLayout.GetAnchor(IArrangedElement)"/>. 532internal static AnchorStyles xGetAnchor(IArrangedElement element) 549internal static bool xGetAutoSizedAndAnchored(IArrangedElement element) 568internal static DockStyle xGetDock(IArrangedElement element) 587internal static void xSetAnchor(IArrangedElement element, AnchorStyles value) 606internal static void xSetDock(IArrangedElement element, DockStyle value) 640internal static bool GetFlowBreak(IArrangedElement element) 650internal static void SetFlowBreak(IArrangedElement element, bool value) 674internal static Size GetLayoutBounds(IArrangedElement element) 689/// The <see cref="TableLayout"/> engine now calls <see cref="SetLayoutBounds(IArrangedElement, Size)"/> when it 697internal static void SetLayoutBounds(IArrangedElement element, Size value) 705internal static bool HasLayoutBounds(IArrangedElement element) 718/// CAREFUL: this is a copy of the state. You need to <see cref="SetLayoutState(IArrangedElement, BitVector32)"/> 722internal static BitVector32 GetLayoutState(IArrangedElement element) => 725internal static void SetLayoutState(IArrangedElement element, BitVector32 state) =>
System\Windows\Forms\Layout\DefaultLayout.cs (39)
23private static void LayoutAutoSizedControls(IArrangedElement container) 28IArrangedElement element = children[i]; 77private static Rectangle GetGrowthBounds(IArrangedElement element, Size newSize) 108private static GrowthDirection GetGrowthDirection(IArrangedElement element) 149private static Rectangle GetAnchorDestination(IArrangedElement element, Rectangle displayRect, bool measureOnly) 157private static Rectangle ComputeAnchoredBoundsV2(IArrangedElement element, Rectangle displayRectangle) 236private static Rectangle ComputeAnchoredBounds(IArrangedElement element, Rectangle displayRect, bool measureOnly) 342internal static bool UseAnchorLayoutV2(IArrangedElement element) 349private static void LayoutAnchoredControls(IArrangedElement container) 362IArrangedElement element = children[i]; 373private static Size LayoutDockedControls(IArrangedElement container, bool measureOnly) 382IArrangedElement? mdiClient = null; 389IArrangedElement element = children[i]; 483private static void TryCalculatePreferredSizeDockedControl(IArrangedElement element, Rectangle newElementBounds, bool measureOnly, ref Size preferredSize, ref Rectangle remainingBounds) 536private static Size GetVerticalDockedSize(IArrangedElement element, Size remainingSize, bool measureOnly) 553private static Size GetHorizontalDockedSize(IArrangedElement element, Size remainingSize, bool measureOnly) 570private static Size xGetDockedSize(IArrangedElement element, Size constraints) 589private protected override bool LayoutCore(IArrangedElement container, LayoutEventArgs args) 597private static bool TryCalculatePreferredSize(IArrangedElement container, bool measureOnly, out Size preferredSize) 614IArrangedElement element = children[i]; 709private static void UpdateAnchorInfo(IArrangedElement element) 889public static AnchorStyles GetAnchor(IArrangedElement element) => CommonProperties.xGetAnchor(element); 891public static void SetAnchor(IArrangedElement element, AnchorStyles value) 930public static DockStyle GetDock(IArrangedElement element) => CommonProperties.xGetDock(element); 932public static void SetDock(IArrangedElement element, DockStyle value) 972public static void ScaleAnchorInfo(IArrangedElement element, SizeF factor) 1002private static Rectangle GetCachedBounds(IArrangedElement element) 1019private static bool HasCachedBounds(IArrangedElement? container) => 1022private static void ApplyCachedBounds(IArrangedElement container) 1049IArrangedElement element = (IArrangedElement)entry.Key; 1069private static void ClearCachedBounds(IArrangedElement container) => container.Properties.RemoveValue(s_cachedBoundsProperty); 1071private static void SetCachedBounds(IArrangedElement element, Rectangle bounds) 1084internal static AnchorInfo? GetAnchorInfo(IArrangedElement element) => 1087internal static void SetAnchorInfo(IArrangedElement element, AnchorInfo? value) => 1090private protected override void InitLayoutCore(IArrangedElement element, BoundsSpecified specified) 1102internal override Size GetPreferredSize(IArrangedElement container, Size proposedBounds) 1110private static Size GetAnchorPreferredSize(IArrangedElement container) 1118IArrangedElement 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) 282public static bool GetWrapContents(IArrangedElement container) => 285public static void SetWrapContents(IArrangedElement container, bool value) 292public static FlowDirection GetFlowDirection(IArrangedElement container) => 295public static void SetFlowDirection(IArrangedElement container, FlowDirection value) 305private 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; 839IArrangedElement element = layoutInfo.Element; 866private static Size GetElementSize(IArrangedElement element, Size proposedConstraints) => 1198IArrangedElement element = layoutInfo.Element; 1290internal static IArrangedElement? GetControlFromPosition(IArrangedElement container, int column, int row) 1324internal static TableLayoutPanelCellPosition GetPositionFromControl(IArrangedElement? container, IArrangedElement? child) 1350internal static LayoutInfo GetLayoutInfo(IArrangedElement element) 1361internal static void SetLayoutInfo(IArrangedElement element, LayoutInfo value) 1375internal static ContainerInfo GetContainerInfo(IArrangedElement container) 1389private static void Debug_VerifyAssignmentsAreCurrent(IArrangedElement container, ContainerInfo containerInfo) 1392Dictionary<IArrangedElement, LayoutInfo> oldLayoutInfo = []; 1400IArrangedElement element = children[i]; 1450private static void Debug_VerifyNoOverlapping(IArrangedElement container) 1458foreach (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