public override void EnsureVisibleContainedDesigner(ActivityDesigner containedDesigner) { if (containedDesigner == null) { throw new ArgumentNullException("containedDesigner"); } //we could be collapsed, make sure the view itself is visible this.Expanded = true; ActivityDesigner activeDesigner = ActiveDesigner; if (containedDesigner != activeDesigner && containedDesigner != this) { DesignerView viewToActivate = null; ReadOnlyCollection <DesignerView> views = ValidatedViews; //Go thru the views and check if the child designer is one of the views foreach (DesignerView view in views) { if (containedDesigner == view.AssociatedDesigner) { viewToActivate = view; break; } } //This means that the child designer is in our main flow if (viewToActivate == null) { viewToActivate = views[0]; } ActiveView = viewToActivate; //Invoking a verb might change the shown view so we map again CompositeActivityDesigner activeCompositeDesigner = ActiveDesigner as CompositeActivityDesigner; if (activeCompositeDesigner != null) { if (activeCompositeDesigner != this) { activeCompositeDesigner.EnsureVisibleContainedDesigner(containedDesigner); } else { base.EnsureVisibleContainedDesigner(containedDesigner); } } } }
public override void EnsureVisibleContainedDesigner(ActivityDesigner containedDesigner) { if (containedDesigner == null) { throw new ArgumentNullException("containedDesigner"); } this.Expanded = true; ActivityDesigner activeDesigner = this.ActiveDesigner; if ((containedDesigner != activeDesigner) && (containedDesigner != this)) { DesignerView view = null; ReadOnlyCollection <DesignerView> validatedViews = this.ValidatedViews; foreach (DesignerView view2 in validatedViews) { if (containedDesigner == view2.AssociatedDesigner) { view = view2; break; } } if (view == null) { view = validatedViews[0]; } this.ActiveView = view; CompositeActivityDesigner designer2 = this.ActiveDesigner as CompositeActivityDesigner; if (designer2 != null) { if (designer2 != this) { designer2.EnsureVisibleContainedDesigner(containedDesigner); } else { base.EnsureVisibleContainedDesigner(containedDesigner); } } } }