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)
47IArrangedElement,
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)
12590ArrangedElementCollection IArrangedElement.Children => ChildControls ?? ArrangedElementCollection.Empty; 12592IArrangedElement? IArrangedElement.Container 12601bool IArrangedElement.ParticipatesInLayout => GetState(States.Visible); 12603void IArrangedElement.PerformLayout(IArrangedElement affectedElement, string? affectedProperty) 12608PropertyStore IArrangedElement.Properties 12614void 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)
875if (((IArrangedElement)item).ParticipatesInLayout) 2267internal static Size GetPreferredSizeHorizontal(IArrangedElement container, Size proposedConstraints) 2283if (((IArrangedElement)item).ParticipatesInLayout) 2330internal static Size GetPreferredSizeVertical(IArrangedElement container) 2342if (((IArrangedElement)item).ParticipatesInLayout) 3199if (!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)
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) 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)
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) 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