null
MergeEnabled
false
public object Merge(object parent) { if (!this.mergeEnabled) { throw new InvalidOperationException( "Not allowed to merge when the 'MergeEnabled' property is set to 'false'"); } if (parent == null) { return this; } IList plist = parent as IList; if (plist == null) { throw new InvalidOperationException("Cannot merge with object of type [" + parent.GetType() + "]"); } IList merged = new ManagedList(); foreach (object element in plist) { merged.Add(element); } foreach (object o in this) { merged.Add(o); } return merged; } }
public void MergeWithNonCompatibleParentType() { ManagedList child = new ManagedList(); child.Add("one"); child.MergeEnabled = true; child.Merge("hello"); }