Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

Type.GetProperty Method

Gets a specific property of the current Type.

Overload List

Searches for the public property with the specified name.

Supported by the .NET Compact Framework.

[Visual Basic] Overloads Public Function GetProperty(String) As PropertyInfo
[C#] public PropertyInfo GetProperty(string);
[C++] public: PropertyInfo* GetProperty(String*);
[JScript] public function GetProperty(String) : PropertyInfo;

Searches for the specified property, using the specified binding constraints.

Supported by the .NET Compact Framework.

[Visual Basic] Overloads Public Overridable Function GetProperty(String, BindingFlags) As PropertyInfo Implements IReflect.GetProperty
[C#] public virtual PropertyInfo GetProperty(string, BindingFlags);
[C++] public: virtual PropertyInfo* GetProperty(String*, BindingFlags);
[JScript] public function GetProperty(String, BindingFlags) : PropertyInfo;

Searches for the public property with the specified name and return type.

Supported by the .NET Compact Framework.

[Visual Basic] Overloads Public Function GetProperty(String, Type) As PropertyInfo
[C#] public PropertyInfo GetProperty(string, Type);
[C++] public: PropertyInfo* GetProperty(String*, Type*);
[JScript] public function GetProperty(String, Type) : PropertyInfo;

Searches for the specified public property whose parameters match the specified argument types.

[Visual Basic] Overloads Public Function GetProperty(String, Type()) As PropertyInfo
[C#] public PropertyInfo GetProperty(string, Type[]);
[C++] public: PropertyInfo* GetProperty(String*, Type[]);
[JScript] public function GetProperty(String, Type[]) : PropertyInfo;

Searches for the specified public property whose parameters match the specified argument types.

Supported by the .NET Compact Framework.

[Visual Basic] Overloads Public Function GetProperty(String, Type, Type()) As PropertyInfo
[C#] public PropertyInfo GetProperty(string, Type, Type[]);
[C++] public: PropertyInfo* GetProperty(String*, Type*, Type[]);
[JScript] public function GetProperty(String, Type, Type[]) : PropertyInfo;

Searches for the specified public property whose parameters match the specified argument types and modifiers.

Supported by the .NET Compact Framework.

[Visual Basic] Overloads Public Function GetProperty(String, Type, Type(), ParameterModifier()) As PropertyInfo
[C#] public PropertyInfo GetProperty(string, Type, Type[], ParameterModifier[]);
[C++] public: PropertyInfo* GetProperty(String*, Type*, Type[], ParameterModifier[]);
[JScript] public function GetProperty(String, Type, Type[], ParameterModifier[]) : PropertyInfo;

Searches for the specified property whose parameters match the specified argument types and modifiers, using the specified binding constraints.

Supported by the .NET Compact Framework.

[Visual Basic] Overloads Public Overridable Function GetProperty(String, BindingFlags, Binder, Type, Type(), ParameterModifier()) As PropertyInfo Implements IReflect.GetProperty
[C#] public virtual PropertyInfo GetProperty(string, BindingFlags, Binder, Type, Type[], ParameterModifier[]);
[C++] public: virtual PropertyInfo* GetProperty(String*, BindingFlags, Binder*, Type*, Type[], ParameterModifier[]);
[JScript] public function GetProperty(String, BindingFlags, Binder, Type, Type[], ParameterModifier[]) : PropertyInfo;

Example

[Visual Basic, C#, C++] The following example obtains a Type object corresponding to MyPropertyClass, and the indexed property of this class is retrieved using the arguments passed to the GetProperty method.

[Visual Basic, C#, C++] Note   This example shows how to use one of the overloaded versions of GetProperty. For other examples that might be available, see the individual overload topics.
[Visual Basic] 
Imports System
Imports System.Reflection

Public Class MyPropertyClass
    Private myPropertyArray(9, 9) As Integer
    ' Declare an indexer.
    Default Public Property Item(ByVal i As Integer, ByVal j As Integer) As Integer
        Get
            Return myPropertyArray(i, j)
        End Get
        Set(ByVal Value As Integer)
            myPropertyArray(i, j) = Value
        End Set
    End Property
End Class 'MyPropertyClass

Public Class MyTypeClass
    Public Shared Sub Main()
        Try
            Dim myType As Type = GetType(MyPropertyClass)
            Dim myTypeArray(1) As Type
            ' Create an instance of a Type array representing the number, order 
            ' and type of the parameters for the property.
            myTypeArray.SetValue(GetType(Integer), 0)
            myTypeArray.SetValue(GetType(Integer), 1)
            ' Search for the indexed property whose parameters match the
            ' specified argument types and modifiers.
            Dim myPropertyInfo As PropertyInfo = myType.GetProperty("Item", _
                  GetType(Integer), myTypeArray, Nothing)
            Console.WriteLine(myType.FullName + "." + myPropertyInfo.Name + _
                  " has a property  type of " + myPropertyInfo.PropertyType.ToString())
        Catch ex As Exception
            Console.WriteLine("An exception occurred " + ex.Message.ToString())
        End Try
    End Sub 'Main
End Class 'MyTypeClass

[C#] 
using System;
using System.Reflection;
public class MyPropertyClass
{
    private int [,] myPropertyArray = new int[10,10]; 
    // Declare an indexer.
    public int this [int i,int j]
    {
        get 
        {
            return myPropertyArray[i,j];
        }
        set 
        {
            myPropertyArray[i,j] = value;
        }
    }
}
public class MyTypeClass
{
    public static void Main()
    {
        try
        {
            Type myType=typeof(MyPropertyClass);
            Type[] myTypeArray = new Type[2];
            // Create an instance of the Type array representing the number, order 
            // and type of the parameters for the property.
            myTypeArray.SetValue(typeof(int),0);
            myTypeArray.SetValue(typeof(int),1);
            // Search for the indexed property whose parameters match the
            // specified argument types and modifiers.
            PropertyInfo myPropertyInfo = myType.GetProperty("Item",
                typeof(int),myTypeArray,null);
            Console.WriteLine(myType.FullName + "." + myPropertyInfo.Name + 
                " has a property type of " + myPropertyInfo.PropertyType);
         }
        catch(Exception ex)
        {
            Console.WriteLine("An exception occurred " + ex.Message);
        }
    }
}

[C++] 
#using <mscorlib.dll>

using namespace System;
using namespace System::Reflection;
public __gc class MyPropertyClass {
private:
   int myPropertyArray[,];
   // Declare an indexer.
public:
   __property int get_Item(int i, int j) {
      return myPropertyArray[i, j];

   }
   __property void set_Item(int i, int j, int value) {

      myPropertyArray[i, j] = value;
   }

};

int main() {
   try {
      Type* myType=__typeof(MyPropertyClass);
      Type* myTypeArray[] = new Type*[2];
      // Create an instance of the Type array representing the number, order
      // and type of the parameters for the property.
      myTypeArray->SetValue(__typeof(int), 0);
      myTypeArray->SetValue(__typeof(int), 1);
      // Search for the indexed property whose parameters match the
      // specified argument types and modifiers.
      PropertyInfo*  myPropertyInfo = myType->GetProperty(S"Item",
         __typeof(int), myTypeArray, 0);
      Console::WriteLine(S"{0}.{1} has a property type of {2}", myType->FullName,
         myPropertyInfo->Name, myPropertyInfo->PropertyType);
   } catch (Exception* ex) {
      Console::WriteLine(S"An exception occurred {0}", ex->Message);
   }
}

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

See Also

Type Class | Type Members | System Namespace

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2014 Microsoft. All rights reserved.