From ca8e6462f4ff8a8312e9e36f890be220661fba67 Mon Sep 17 00:00:00 2001 From: tznind Date: Sat, 14 Jan 2023 20:43:17 +0000 Subject: [PATCH] Fix SplitContainerNesting container count --- UICatalog/Scenarios/SplitContainerNesting.cs | 23 ++++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/UICatalog/Scenarios/SplitContainerNesting.cs b/UICatalog/Scenarios/SplitContainerNesting.cs index 95fa978be..3be97ef73 100644 --- a/UICatalog/Scenarios/SplitContainerNesting.cs +++ b/UICatalog/Scenarios/SplitContainerNesting.cs @@ -137,17 +137,18 @@ namespace UICatalog.Scenarios { private void AddMorePanels (SplitContainer to) { - bool canSplitLeft = !(to.Panel1 is SplitContainer); - bool canSplitRight = !(to.Panel2 is SplitContainer); + if (panelsCreated == panelsToCreate) { + return; + } - if(canSplitRight) { + if (!(to.Panel1 is SplitContainer)) { + SplitLeft (to); + } + + if (!(to.Panel2 is SplitContainer)) { SplitRight (to); } - if (canSplitLeft && panelsCreated < panelsToCreate) { - SplitLeft(to); - } - if (to.Panel1 is SplitContainer && to.Panel2 is SplitContainer) { AddMorePanels ((SplitContainer)to.Panel1); @@ -157,6 +158,10 @@ namespace UICatalog.Scenarios { } private void SplitLeft(SplitContainer to) { + if (panelsCreated == panelsToCreate) { + return; + } + // we can split Panel1 var tv = (TextView)to.Panel1.Subviews.Single (); @@ -173,6 +178,10 @@ namespace UICatalog.Scenarios { } private void SplitRight(SplitContainer to) { + if (panelsCreated == panelsToCreate) { + return; + } + // we can split Panel2 var tv = (TextView)to.Panel2.Subviews.Single (); panelsCreated++;