Freigeben über


Type.DeclaringType-Eigenschaft

Ruft die Klasse ab, die diesen Member deklariert.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Overrides ReadOnly Property DeclaringType As Type
'Usage
Dim instance As Type
Dim value As Type

value = instance.DeclaringType
public override Type DeclaringType { get; }
public:
virtual property Type^ DeclaringType {
    Type^ get () override;
}
/** @property */
public Type get_DeclaringType ()
public override function get DeclaringType () : Type

Eigenschaftenwert

Das Type-Objekt für die Klasse, in der dieser Member deklariert ist. Wenn der Typ ein geschachtelter Typ ist, gibt diese Eigenschaft den umschließenden Typ zurück.

Hinweise

Diese Eigenschaft implementiert die von MemberInfo geerbte abstrakte Eigenschaft.

Wenn der aktuelle Type einen Typparameter in der Definition eines generischen Typs oder einer generischen Methode darstellt, identifizieren die DeclaringType-Eigenschaft und die DeclaringMethod-Eigenschaft die generische Typ- oder Methodendefinition, in der der generische Typparameter ursprünglich definiert wurde:

  • Wenn die DeclaringMethod-Eigenschaft eine MethodInfo zurückgibt, stellt diese MethodInfo eine generische Methodendefinition dar, und das aktuelle Type-Objekt stellt einen Typparameter dieser generischen Methodendefinition dar.

  • Wenn die DeclaringMethod-Eigenschaft NULL (Nothing in Visual Basic) zurückgibt, gibt die DeclaringType-Eigenschaft immer ein Type-Objekt zurück, das eine generische Typdefinition darstellt, und das aktuelle Type-Objekt stellt einen Typparameter dieser generischen Typdefinition dar.

Bei einem Typparameter einer generischen Methode gibt diese Eigenschaft den Typ zurück, der die generische Methodendefinition enthält.

Beispiel

In diesem Beispiel wird der deklarierende Typ einer Methode einer abgeleiteten Klasse angezeigt.

Imports System
Imports System.Reflection
Imports Microsoft.VisualBasic

Public MustInherit Class dtype

    Public MustInherit Class MyClassA
        Public MustOverride Function m() As Integer
    End Class

    Public MustInherit Class MyClassB
        Inherits MyClassA
    End Class

    Public Shared Sub Main()
        Console.WriteLine("The declaring type of m is {0}.", _
           GetType(MyClassB).GetMethod("m").DeclaringType)
    End Sub
End Class
using System;
using System.Reflection;
 
public abstract class dtype 
{
    
    public abstract class MyClassA 
    {
        public abstract int m(); 
    }
    
    public abstract class MyClassB : MyClassA 
    {
    }
  
    public static void Main(string[] args) 
    { 
        Console.WriteLine("The declaring type of m is {0}.",
            typeof(MyClassB).GetMethod("m").DeclaringType);
    }
}
using namespace System;
using namespace System::Reflection;

public ref class dtype abstract
{
public:
   ref class MyClassA abstract
   {
   public:
      virtual int m() = 0;
   };

   ref class MyClassB abstract: public MyClassA{};
};

int main()
{
   Console::WriteLine( "The declaring type of m is {0}.", dtype::MyClassB::typeid->GetMethod( "m" )->DeclaringType );
}
import System.*;
import System.Reflection.*;

abstract public class Dtype
{
    abstract public class MyClassA
    {
        public abstract int M();
    } //MyClassA
      
    abstract public class MyClassB extends MyClassA
    {
    } //MyClassB
   
    public static void main(String[] args)
    {
        Console.WriteLine("The declaring type of M is {0}.", 
        MyClassB.class.ToType().GetMethod("M").get_DeclaringType());
    } //main
} //Dtype

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

Type-Klasse
Type-Member
System-Namespace
MemberInfo
ReflectedType