MemberInfo.ReflectedType Property
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Gets the class object that was used to obtain this instance of MemberInfo.
Namespace: System.Reflection
Assembly: mscorlib (in mscorlib.dll)
Syntax
Public MustOverride ReadOnly Property ReflectedType As Type
public abstract Type ReflectedType { get; }
Property Value
Type: System..::.Type
The type object through which this MemberInfo object was obtained.
Remarks
The ReflectedType property retrieves the Type object that was used to obtain this instance of MemberInfo. This may differ from DeclaringType if this MemberInfo object represents a member inherited from a base class.
If the MemberInfo object is a global member (that is, if it was obtained from the Module..::.GetMethods method, which returns global methods on a module), the returned DeclaringType will be nullNothingnullptra null reference (Nothing in Visual Basic).
Examples
The following example shows how the ReflectedType changes when the member Object..::.ToString is viewed from a MemberInfo obtained from type Object and from a MemberInfo obtained from the MemberInfo class itself, which inherits Object but does not override Object..::.ToString.
Note
To run this example, see Building examples that have static TextBlock controls for Windows Phone 8.
Imports System.Reflection
Module Example
Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
Dim m1 As MemberInfo = GetType(Object).GetMethod("ToString")
Dim m2 As MemberInfo = GetType(MemberInfo).GetMethod("ToString")
outputBlock.Text += String.Format("m1.DeclaringType: {0}", m1.DeclaringType) & vbCrLf
outputBlock.Text += String.Format("m1.ReflectedType: {0}", m1.ReflectedType) & vbCrLf
outputBlock.Text &= vbCrLf
outputBlock.Text += String.Format("m2.DeclaringType: {0}", m2.DeclaringType) & vbCrLf
outputBlock.Text += String.Format("m2.ReflectedType: {0}", m2.ReflectedType) & vbCrLf
End Sub
End Module
' This code example produces the following output:
'
' m1.DeclaringType: System.Object
' m1.ReflectedType: System.Object
'
' m2.DeclaringType: System.Object
' m2.ReflectedType: System.Reflection.MemberInfo
'
using System;
using System.Reflection;
public class Example
{
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
MemberInfo m1 = typeof(Object).GetMethod("ToString");
MemberInfo m2 = typeof(MemberInfo).GetMethod("ToString");
outputBlock.Text += String.Format("m1.DeclaringType: {0}", m1.DeclaringType) + "\n";
outputBlock.Text += String.Format("m1.ReflectedType: {0}", m1.ReflectedType) + "\n";
outputBlock.Text += "\n";
outputBlock.Text += String.Format("m2.DeclaringType: {0}", m2.DeclaringType) + "\n";
outputBlock.Text += String.Format("m2.ReflectedType: {0}", m2.ReflectedType) + "\n";
}
}
/* This code example produces the following output:
m1.DeclaringType: System.Object
m1.ReflectedType: System.Object
m2.DeclaringType: System.Object
m2.ReflectedType: System.Reflection.MemberInfo
*/
Version Information
Windows Phone OS
Supported in: 8.1, 8.0, 7.1, 7.0
Platforms
Windows Phone