System.ComponentModel.DebugReflectPropertyDescriptor.ExtenderCanResetValue C# (CSharp) Method

ExtenderCanResetValue() private method

private ExtenderCanResetValue ( IExtenderProvider provider, object component ) : bool
provider IExtenderProvider
component object
return bool
        internal bool ExtenderCanResetValue(IExtenderProvider provider, object component) {
            if (DefaultValue != noValue) {
                return !object.Equals(ExtenderGetValue(provider, component),defaultValue);
            }
            
            MethodInfo reset = ResetMethodValue;
            if (reset != null) {
                MethodInfo shouldSerialize = ShouldSerializeMethodValue;
                if (shouldSerialize != null) {
                    try {
                        provider = (IExtenderProvider)GetDebugInvokee(componentClass, provider);
                        return (bool)shouldSerialize.Invoke(provider, new object[] { component});
                    }
                    catch {}
                }
            }
            else {
                return true;
            }
            return false;
        }