protected override bool CreateChildren(bool diffOldChildren)
        {
            try
            {
                if (mergedPd.PropertyType.IsValueType || (Flags & GridEntry.FLAG_IMMUTABLE) != 0)
                {
                    return(base.CreateChildren(diffOldChildren));
                }

                ChildCollection.Clear();

                MultiPropertyDescriptorGridEntry[] mergedProps = MultiSelectRootGridEntry.PropertyMerger.GetMergedProperties(mergedPd.GetValues(objs), this, PropertySort, CurrentTab);

                Debug.WriteLineIf(CompModSwitches.DebugGridView.TraceVerbose && mergedProps is null, "PropertyGridView: MergedProps returned null!");

                if (mergedProps != null)
                {
                    ChildCollection.AddRange(mergedProps);
                }
                bool fExpandable = Children.Count > 0;
                if (!fExpandable)
                {
                    SetFlag(GridEntry.FL_EXPANDABLE_FAILED, true);
                }
                return(fExpandable);
            }
            catch
            {
                return(false);
            }
        }
        protected override bool CreateChildren(bool diffOldChildren)
        {
            try {
                if (mergedPd.PropertyType.IsValueType || (Flags & GridEntry.FLAG_IMMUTABLE) != 0)
                {
                    return(base.CreateChildren(diffOldChildren));
                }

                ChildCollection.Clear();

                MultiPropertyDescriptorGridEntry[] mergedProps = MultiSelectRootGridEntry.PropertyMerger.GetMergedProperties(mergedPd.GetValues(objs), this, this.PropertySort, this.CurrentTab);

                Debug.Assert(mergedProps != null, "MergedProps returned null!");

                if (mergedProps != null)
                {
                    ChildCollection.AddRange(mergedProps);
                }
                bool fExpandable = this.Children.Count > 0;
                if (!fExpandable)
                {
                    SetFlag(GridEntry.FL_EXPANDABLE_FAILED, true);
                }
                return(fExpandable);
            }
            catch (Exception) {
                return(false);
            }
        }
        protected override bool CreateChildren(bool diffOldChildren = false)
        {
            try
            {
                if (_mergedDescriptor.PropertyType.IsValueType || EntryFlags.HasFlag(Flags.Immutable))
                {
                    return(base.CreateChildren(diffOldChildren));
                }

                ChildCollection.Clear();

                var mergedProperties = MultiSelectRootGridEntry.PropertyMerger.GetMergedProperties(
                    _mergedDescriptor.GetValues(_objects),
                    this,
                    _propertySort,
                    OwnerTab);

                Debug.WriteLineIf(
                    CompModSwitches.DebugGridView.TraceVerbose && mergedProperties is null,
                    "PropertyGridView: MergedProps returned null!");

                if (mergedProperties is not null)
                {
                    ChildCollection.AddRange(mergedProperties);
                }

                bool expandable = Children.Count > 0;
                if (!expandable)
                {
                    SetFlag(Flags.ExpandableFailed, true);
                }

                return(expandable);
            }
            catch (Exception e)
            {
                Debug.Fail(e.Message);
                return(false);
            }
        }