Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ExtenderCanResetValue()

bool System.ComponentModel.ReflectPropertyDescriptor.ExtenderCanResetValue ( IExtenderProvider provider,
object component )
inlinepackage

Definition at line 397 of file ReflectPropertyDescriptor.cs.

398 {
399 if (DefaultValue != s_noValue)
400 {
401 return !object.Equals(ExtenderGetValue(provider, component), _defaultValue);
402 }
403 MethodInfo resetMethodValue = ResetMethodValue;
404 if (resetMethodValue != null)
405 {
406 MethodInfo shouldSerializeMethodValue = ShouldSerializeMethodValue;
407 if (shouldSerializeMethodValue != null)
408 {
409 try
410 {
411 IExtenderProvider obj = (IExtenderProvider)GetInvocationTarget(_componentClass, provider);
412 return (bool)shouldSerializeMethodValue.Invoke(obj, new object[1] { component });
413 }
414 catch
415 {
416 }
417 }
418 return true;
419 }
420 return false;
421 }
override? object GetInvocationTarget(Type type, object instance)
object ExtenderGetValue(IExtenderProvider provider, object component)
object? Invoke(object? obj, object?[]? parameters)

References System.ComponentModel.ReflectPropertyDescriptor._componentClass, System.ComponentModel.ReflectPropertyDescriptor._defaultValue, System.ComponentModel.ReflectPropertyDescriptor.DefaultValue, System.ComponentModel.ReflectPropertyDescriptor.ExtenderGetValue(), System.ComponentModel.PropertyDescriptor.GetInvocationTarget(), System.Reflection.MethodBase.Invoke(), System.obj, System.ComponentModel.ReflectPropertyDescriptor.ResetMethodValue, System.ComponentModel.ReflectPropertyDescriptor.s_noValue, and System.ComponentModel.ReflectPropertyDescriptor.ShouldSerializeMethodValue.

Referenced by System.ComponentModel.ExtendedPropertyDescriptor.CanResetValue().