public XamlLayout(XamlLayout other, string newName = null, bool isBuiltIn = false, bool autoValidationSuspended = false)
        {
            IsBuiltIn = isBuiltIn;
            AutoValidationSuspended = autoValidationSuspended;

            Name    = newName ?? other.Name;
            IsValid = other.IsValid;
            Xaml    = other.Xaml;
        }
        public void CopyFrom(XamlLayout other, bool copyValidation = true)
        {
            var restore = AutoValidationSuspended;

            AutoValidationSuspended = copyValidation;

            Name = other.Name;
            Xaml = other.Xaml;

            if (copyValidation)
            {
                IsValid = other.IsValid;
            }

            AutoValidationSuspended = restore;
        }