diff --git a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/BindingList.cs b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/BindingList.cs
index 9e5faa75ec37b3..b423375c646b8d 100644
--- a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/BindingList.cs
+++ b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/BindingList.cs
@@ -73,7 +73,7 @@ private void Initialize()
}
}
- private bool ItemTypeHasDefaultConstructor
+ private static bool ItemTypeHasDefaultConstructor
{
get
{
diff --git a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs
index b675da60e69d0d..3e8408548c63a0 100644
--- a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs
+++ b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/CultureInfoConverter.cs
@@ -22,7 +22,7 @@ public class CultureInfoConverter : TypeConverter
///
/// Retrieves the "default" name for our culture.
///
- private string DefaultCultureString => SR.CultureInfoConverterDefaultCultureString;
+ private static string DefaultCultureString => SR.CultureInfoConverterDefaultCultureString;
private const string DefaultInvariantCultureString = "(Default)";
diff --git a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/Design/DesigntimeLicenseContext.cs b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/Design/DesigntimeLicenseContext.cs
index b72d91e01c955a..eb5f0d456b8cd3 100644
--- a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/Design/DesigntimeLicenseContext.cs
+++ b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/Design/DesigntimeLicenseContext.cs
@@ -50,7 +50,7 @@ internal sealed class RuntimeLicenseContext : LicenseContext
/// if there is a '#' in the path, everything after this is treated as a fragment. So
/// we need to append the fragment to the end of the path.
///
- private string GetLocalPath(string fileName)
+ private static string GetLocalPath(string fileName)
{
Debug.Assert(fileName != null && fileName.Length > 0, "Cannot get local path, fileName is not valid");
@@ -150,7 +150,7 @@ private string GetLocalPath(string fileName)
* we are attempting to locate could have different casing
* depending on how the assembly was loaded.
**/
- private Stream? CaseInsensitiveManifestResourceStreamLookup(Assembly satellite, string name)
+ private static Stream? CaseInsensitiveManifestResourceStreamLookup(Assembly satellite, string name)
{
CompareInfo comparer = CultureInfo.InvariantCulture.CompareInfo;
diff --git a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.ReflectedTypeData.cs b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.ReflectedTypeData.cs
index 7237e3f94b0f69..05241af299d0c9 100644
--- a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.ReflectedTypeData.cs
+++ b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.ReflectedTypeData.cs
@@ -154,7 +154,7 @@ internal AttributeCollection GetAttributes()
///
/// Retrieves the component name from the site.
///
- internal string? GetComponentName(object? instance)
+ internal static string? GetComponentName(object? instance)
{
IComponent? comp = instance as IComponent;
ISite? site = comp?.Site;
diff --git a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.cs b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.cs
index 48709a88c24675..dacc0ea3aba45d 100644
--- a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.cs
+++ b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/ReflectTypeDescriptionProvider.cs
@@ -355,10 +355,9 @@ internal AttributeCollection GetAttributes([DynamicallyAccessedMembers(Dynamical
///
/// Retrieves the component name from the site.
///
- internal string? GetComponentName([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)] Type type, object? instance)
+ internal static string? GetComponentName(object? instance)
{
- ReflectedTypeData td = GetTypeData(type, true)!;
- return td.GetComponentName(instance);
+ return ReflectedTypeData.GetComponentName(instance);
}
///
@@ -464,7 +463,7 @@ internal EventDescriptorCollection GetEvents([DynamicallyAccessedMembers(Dynamic
/// Retrieves custom extender attributes. We don't support
/// extender attributes, so we always return an empty collection.
///
- internal AttributeCollection GetExtendedAttributes(object instance)
+ internal static AttributeCollection GetExtendedAttributes(object instance)
{
return AttributeCollection.Empty;
}
@@ -481,10 +480,9 @@ internal AttributeCollection GetExtendedAttributes(object instance)
///
/// Retrieves the component name from the site.
///
- [RequiresUnreferencedCode("The Type of instance cannot be statically discovered.")]
- internal string? GetExtendedComponentName(object instance)
+ internal static string? GetExtendedComponentName(object instance)
{
- return GetComponentName(instance.GetType(), instance);
+ return GetComponentName(instance);
}
///
@@ -502,7 +500,7 @@ internal TypeConverter GetExtendedConverter(object instance)
/// Return the default event. The default event is determined by the
/// presence of a DefaultEventAttribute on the class.
///
- internal EventDescriptor? GetExtendedDefaultEvent(object instance)
+ internal static EventDescriptor? GetExtendedDefaultEvent()
{
return null; // we don't support extended events.
}
@@ -510,7 +508,7 @@ internal TypeConverter GetExtendedConverter(object instance)
///
/// Return the default property.
///
- internal PropertyDescriptor? GetExtendedDefaultProperty(object instance)
+ internal static PropertyDescriptor? GetExtendedDefaultProperty(object instance)
{
return null; // extender properties are never the default.
}
@@ -527,7 +525,7 @@ internal TypeConverter GetExtendedConverter(object instance)
///
/// Retrieves the events for this type.
///
- internal EventDescriptorCollection GetExtendedEvents(object instance)
+ internal static EventDescriptorCollection GetExtendedEvents(object instance)
{
return EventDescriptorCollection.Empty;
}
@@ -796,7 +794,7 @@ private static IExtenderProvider[] GetExtenders(ICollection components, object i
///
/// Retrieves the owner for a property.
///
- internal object GetExtendedPropertyOwner(object instance, PropertyDescriptor? pd)
+ internal static object GetExtendedPropertyOwner(object instance, PropertyDescriptor? pd)
{
return GetPropertyOwner(instance.GetType(), instance, pd);
}
@@ -878,7 +876,7 @@ internal PropertyDescriptorCollection GetProperties([DynamicallyAccessedMembers(
///
/// Retrieves the owner for a property.
///
- internal object GetPropertyOwner(Type type, object instance, PropertyDescriptor? pd)
+ internal static object GetPropertyOwner(Type type, object instance, PropertyDescriptor? pd)
{
return TypeDescriptor.GetAssociation(type, instance);
}
diff --git a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/TypeDescriptor.cs b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/TypeDescriptor.cs
index 0747e7ff01e95e..f1b36ef296ab94 100644
--- a/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/TypeDescriptor.cs
+++ b/src/libraries/System.ComponentModel.TypeConverter/src/System/ComponentModel/TypeDescriptor.cs
@@ -3324,9 +3324,9 @@ AttributeCollection ICustomTypeDescriptor.GetAttributes()
// custom type descriptor
TypeDescriptionProvider p = _node.Provider;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
- return rp.GetExtendedAttributes(_instance);
+ return ReflectTypeDescriptionProvider.GetExtendedAttributes(_instance);
}
ICustomTypeDescriptor desc = p.GetExtendedTypeDescriptor(_instance);
@@ -3369,9 +3369,9 @@ AttributeCollection ICustomTypeDescriptor.GetAttributes()
// custom type descriptor
TypeDescriptionProvider p = _node.Provider;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
- return rp.GetExtendedComponentName(_instance);
+ return ReflectTypeDescriptionProvider.GetExtendedComponentName(_instance);
}
ICustomTypeDescriptor desc = p.GetExtendedTypeDescriptor(_instance);
@@ -3413,9 +3413,9 @@ TypeConverter ICustomTypeDescriptor.GetConverter()
// custom type descriptor
TypeDescriptionProvider p = _node.Provider;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
- return rp.GetExtendedDefaultEvent(_instance);
+ return ReflectTypeDescriptionProvider.GetExtendedDefaultEvent();
}
ICustomTypeDescriptor desc = p.GetExtendedTypeDescriptor(_instance);
@@ -3433,9 +3433,9 @@ TypeConverter ICustomTypeDescriptor.GetConverter()
// If so, we can call on it directly rather than creating another
// custom type descriptor
TypeDescriptionProvider p = _node.Provider;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
- return rp.GetExtendedDefaultProperty(_instance);
+ return ReflectTypeDescriptionProvider.GetExtendedDefaultProperty(_instance);
}
ICustomTypeDescriptor desc = p.GetExtendedTypeDescriptor(_instance);
@@ -3478,9 +3478,9 @@ EventDescriptorCollection ICustomTypeDescriptor.GetEvents()
// If so, we can call on it directly rather than creating another
// custom type descriptor
TypeDescriptionProvider p = _node.Provider;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
- return rp.GetExtendedEvents(_instance);
+ return ReflectTypeDescriptionProvider.GetExtendedEvents(_instance);
}
ICustomTypeDescriptor desc = p.GetExtendedTypeDescriptor(_instance);
@@ -3500,13 +3500,13 @@ EventDescriptorCollection ICustomTypeDescriptor.GetEvents(Attribute[]? attribute
// If so, we can call on it directly rather than creating another
// custom type descriptor
TypeDescriptionProvider p = _node.Provider;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
// There is no need to filter these events. For extended objects, they
// are accessed through our pipeline code, which always filters before
// returning. So any filter we do here is redundant. Note that we do
// pass a valid filter to a custom descriptor so it can optimize if it wants.
- EventDescriptorCollection events = rp.GetExtendedEvents(_instance);
+ EventDescriptorCollection events = ReflectTypeDescriptionProvider.GetExtendedEvents(_instance);
return events;
}
@@ -3578,9 +3578,9 @@ object ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor? pd)
TypeDescriptionProvider p = _node.Provider;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
- return rp.GetExtendedPropertyOwner(_instance, pd);
+ return ReflectTypeDescriptionProvider.GetExtendedPropertyOwner(_instance, pd);
}
ICustomTypeDescriptor desc = p.GetExtendedTypeDescriptor(_instance);
@@ -3675,9 +3675,9 @@ AttributeCollection ICustomTypeDescriptor.GetAttributes()
// custom type descriptor
TypeDescriptionProvider p = _node.Provider;
string? name;
- if (p is ReflectTypeDescriptionProvider rp)
+ if (p is ReflectTypeDescriptionProvider)
{
- name = rp.GetComponentName(_objectType, _instance);
+ name = ReflectTypeDescriptionProvider.GetComponentName(_instance);
}
else
{
@@ -3924,7 +3924,7 @@ PropertyDescriptorCollection ICustomTypeDescriptor.GetProperties(Attribute[]? at
object? owner;
if (p is ReflectTypeDescriptionProvider rp)
{
- owner = rp.GetPropertyOwner(_objectType, _instance!, pd);
+ owner = ReflectTypeDescriptionProvider.GetPropertyOwner(_objectType, _instance!, pd);
}
else
{