PropertyInfo.GetSetMethod Methode

Definition

Gibt einen MethodInfo darstellten set Accessor für diese Eigenschaft zurück.

Überlädt

Name Beschreibung
GetSetMethod(Boolean)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird der set Accessor für diese Eigenschaft zurückgegeben.

GetSetMethod()

Gibt den öffentlichen set Accessor für diese Eigenschaft zurück.

GetSetMethod(Boolean)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird der set Accessor für diese Eigenschaft zurückgegeben.

public:
 abstract System::Reflection::MethodInfo ^ GetSetMethod(bool nonPublic);
public abstract System.Reflection.MethodInfo GetSetMethod(bool nonPublic);
abstract member GetSetMethod : bool -> System.Reflection.MethodInfo
Public MustOverride Function GetSetMethod (nonPublic As Boolean) As MethodInfo

Parameter

nonPublic
Boolean

Gibt an, ob der Accessor zurückgegeben werden soll, wenn er nicht öffentlich ist. truewenn ein nicht öffentlicher Accessor zurückgegeben werden soll; andernfalls . false

Gibt zurück

Die Methode dieser Eigenschaft Set oder null, wie in der folgenden Tabelle dargestellt.

Wert: Bedingung
Die Set Methode für diese Eigenschaft. Der set Accessor ist öffentlich, ODER nonPublic der trueset Accessor ist nicht öffentlich.
null nonPublic ist true, aber die Eigenschaft schreibgeschützt ist, ODER nonPublic ist false und der set Accessor nicht öffentlich ist, ODER es gibt keinen set Accessor.

Implementiert

Ausnahmen

Die angeforderte Methode ist nicht öffentlich, und der Aufrufer muss ReflectionPermission nicht über diese nicht öffentliche Methode nachdenken.

Beispiele

Im folgenden Beispiel wird der set Accessor für die angegebene Eigenschaft angezeigt.

using System;
using System.Reflection;

// Define a property.
public class Myproperty
{
    private string caption = "A Default caption";
    public string Caption
    {
        get{return caption;}
        set {if(caption!=value) {caption = value;}
        }
    }
}

class Mypropertyinfo
{
    public static int Main()
    {
        Console.WriteLine ("\nReflection.PropertyInfo");

        // Get the type and PropertyInfo for two separate properties.
        Type MyTypea = Type.GetType("Myproperty");
        PropertyInfo Mypropertyinfoa = MyTypea.GetProperty("Caption");
        Type MyTypeb = Type.GetType("System.Text.StringBuilder");
        PropertyInfo Mypropertyinfob = MyTypeb.GetProperty("Length");
        // Get and display the GetSetMethod method for each property.
        MethodInfo Mygetmethodinfoa = Mypropertyinfoa.GetSetMethod();
        Console.Write ("\nSetAccessor for " + Mypropertyinfoa.Name
            + " returns a " + Mygetmethodinfoa.ReturnType);
        MethodInfo Mygetmethodinfob = Mypropertyinfob.GetSetMethod();
        Console.Write ("\nSetAccessor for " + Mypropertyinfob.Name
            + " returns a " + Mygetmethodinfob.ReturnType);

        // Display the GetSetMethod without using the MethodInfo.
        Console.Write ("\n\n" + MyTypea.FullName + "."
            + Mypropertyinfoa.Name + " GetSetMethod - "
            + Mypropertyinfoa.GetSetMethod());
        Console.Write ("\n" + MyTypeb.FullName + "."
            + Mypropertyinfob.Name + " GetSetMethod - "
            + Mypropertyinfob.GetSetMethod());
        return 0;
    }
}
Imports System.Reflection

' Define a property.
Public Class Myproperty
    Private myCaption As String = "A Default caption"

    Public Property Caption() As String
        Get
            Return myCaption
        End Get
        Set(ByVal Value As String)
            If myCaption <> value Then
                myCaption = value
            End If
        End Set
    End Property
End Class

Class Mypropertyinfo

    Public Shared Function Main() As Integer
        Console.WriteLine(ControlChars.CrLf & "Reflection.PropertyInfo")

        ' Get the type and PropertyInfo for two separate properties.
        Dim MyTypea As Type = Type.GetType("Myproperty")
        Dim Mypropertyinfoa As PropertyInfo = MyTypea.GetProperty("Caption")
        Dim MyTypeb As Type = Type.GetType("System.Text.StringBuilder")
        Dim Mypropertyinfob As PropertyInfo = MyTypeb.GetProperty("Length")
        ' Get and display the GetSetMethod method for each property.
        Dim Mygetmethodinfoa As MethodInfo = Mypropertyinfoa.GetSetMethod()
        Console.WriteLine("SetAccessor for " & Mypropertyinfoa.Name & _
           " returns a " & Mygetmethodinfoa.ReturnType.ToString())
        Dim Mygetmethodinfob As MethodInfo = Mypropertyinfob.GetSetMethod()
        Console.WriteLine("SetAccessor for " & Mypropertyinfob.Name & _
           " returns a " & Mygetmethodinfob.ReturnType.ToString())

        ' Display the GetSetMethod without using the MethodInfo.
        Console.WriteLine(MyTypea.FullName & "." & Mypropertyinfoa.Name & _
           " GetSetMethod - " & Mypropertyinfoa.GetSetMethod().ToString())
        Console.WriteLine(MyTypeb.FullName & "." & Mypropertyinfob.Name & _
           " GetSetMethod - " & Mypropertyinfob.GetSetMethod().ToString())
        Return 0
    End Function
End Class

Hinweise

Um die GetSetMethod Methode zu verwenden, rufen Sie zuerst die Klasse Typeab. Rufen Sie aus dem Type, die PropertyInfo. Verwenden Sie aus dem PropertyInfo, verwenden Sie die GetSetMethod Methode.

Gilt für:

GetSetMethod()

Gibt den öffentlichen set Accessor für diese Eigenschaft zurück.

public:
 virtual System::Reflection::MethodInfo ^ GetSetMethod();
public:
 System::Reflection::MethodInfo ^ GetSetMethod();
public System.Reflection.MethodInfo GetSetMethod();
abstract member GetSetMethod : unit -> System.Reflection.MethodInfo
override this.GetSetMethod : unit -> System.Reflection.MethodInfo
member this.GetSetMethod : unit -> System.Reflection.MethodInfo
Public Function GetSetMethod () As MethodInfo

Gibt zurück

Das MethodInfo Objekt, das die Set Methode für diese Eigenschaft darstellt, wenn der set Accessor öffentlich ist oder null der set Accessor nicht öffentlich ist.

Implementiert

Hinweise

Dies ist eine Komfortmethode, die eine Implementierung für die abstrakte GetSetMethod Methode bereitstellt, auf die der nonPublic Parameter festgelegt ist false.

Um die GetSetMethod Methode zu verwenden, rufen Sie zuerst die Klasse Typeab. Rufen Sie aus dem Type, die PropertyInfo. Verwenden Sie aus dem PropertyInfo, verwenden Sie die GetSetMethod Methode.

Gilt für: