ProvidePropertyAttribute ProvidePropertyAttribute ProvidePropertyAttribute ProvidePropertyAttribute Class

Definition

Gibt den Namen der Eigenschaft an, die ein Implementierer von IExtenderProvider für andere Komponenten bereitstellt.Specifies the name of the property that an implementer of IExtenderProvider offers to other components. Diese Klasse kann nicht geerbt werden.This class cannot be inherited

public ref class ProvidePropertyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=true)]
public sealed class ProvidePropertyAttribute : Attribute
type ProvidePropertyAttribute = class
    inherit Attribute
Public NotInheritable Class ProvidePropertyAttribute
Inherits Attribute
Vererbung
ProvidePropertyAttributeProvidePropertyAttributeProvidePropertyAttributeProvidePropertyAttribute
Attribute

Beispiele

Mit den folgenden Beispiel wird MyClass mit einem ProvidePropertyAttribute , informiert den Compiler an, erstellen Sie eine Eigenschaft namens MyProperty aus der GetMyProperty und SetMyProperty Methoden.The following example marks MyClass with a ProvidePropertyAttribute that tells the compiler to create a property called MyProperty from the GetMyProperty and SetMyProperty methods.

[ProvideProperty("MyProperty",Control::typeid)]
public ref class MyClass: public IExtenderProvider
{
protected:
   CultureInfo^ ciMine;

public:
   // Provides the Get portion of MyProperty. 
   CultureInfo^ GetMyProperty( Control^ myControl )
   {
      // Insert code here.
      return ciMine;
   }

   // Provides the Set portion of MyProperty.
   void SetMyProperty( Control^ myControl, String^ value )
   {
      // Insert code here.
   }

   /* When you inherit from IExtenderProvider, you must implement the 
        * CanExtend method. */
   virtual bool CanExtend( Object^ target )
   {
      return dynamic_cast<Control^>(target) != nullptr;
   }
   // Insert additional code here.
};
[ProvideProperty("MyProperty", typeof(Control))]
public class MyClass : IExtenderProvider {
    protected CultureInfo ciMine = null;
    // Provides the Get portion of MyProperty. 
    public CultureInfo GetMyProperty(Control myControl) {
        // Insert code here.
        return ciMine;
    }
    
    // Provides the Set portion of MyProperty.
    public void SetMyProperty(Control myControl, string value) {
        // Insert code here.
    }
    
    /* When you inherit from IExtenderProvider, you must implement the 
     * CanExtend method. */
    public bool CanExtend(Object target) {
        return(target is Control);
    }
    
    // Insert additional code here.
 }
<ProvideProperty("MyProperty", GetType(Control))> _
Public Class SampleClass
    Implements IExtenderProvider
    Protected ciMine As CultureInfo = Nothing

    ' Provides the Get portion of MyProperty. 
    Public Function GetMyProperty(myControl As Control) As CultureInfo
        ' Insert code here.
        Return ciMine
    End Function 'GetMyProperty

    ' Provides the Set portion of MyProperty.
    Public Sub SetMyProperty(myControl As Control, value As String)
        ' Insert code here.
    End Sub 'SetMyProperty

    ' When you inherit from IExtenderProvider, you must implement the 
    ' CanExtend method. 
    Public Function CanExtend(target As [Object]) As Boolean Implements IExtenderProvider.CanExtend
        Return TypeOf target Is Control
    End Function 'CanExtend

    ' Insert additional code here.

End Class

Hinweise

Wenn Sie eine Klasse mit diesem Attribut markieren, teilen Sie den Code-Generator, um eine Extender-Eigenschaft mit dem Namen zu erstellen, die Sie bereitstellen.When you mark a class with this attribute, you tell the code generator to create an extender property with the name you provide. Die markierte Klasse implementieren muss IExtenderProvider.The marked class must implement IExtenderProvider. Daher kann die neue Eigenschaft von anderen Komponenten in einem Container verwendet werden.As a result, the new property can be used by other components in a container.

Sie müssen in der markierten Klasse implementieren Get <Name > und Set <Name > Methoden.Within the marked class, you must implement Get <name> and Set <name> methods. Z. B. Wenn Sie eine Klasse mit [ProvideProperty("PropertyName")] kennzeichnen, Sie müssen implementieren GetPropertyName und SetPropertyName Methoden.For example, if you mark a class with [ProvideProperty("PropertyName")], you must implement GetPropertyName and SetPropertyName methods. Um anzugeben, dass die neue Eigenschaft ein Extender-Eigenschaft wird, müssen Sie Implementieren von IExtenderProvider, müssen Sie auch implementieren eine CanExtend Methode.To specify that the new property will be an extender property, you must implement from IExtenderProvider, you must also implement a CanExtend method.

Weitere Informationen finden Sie unter Attribute.For more information, see Attributes.

Konstruktoren

ProvidePropertyAttribute(String, String) ProvidePropertyAttribute(String, String) ProvidePropertyAttribute(String, String) ProvidePropertyAttribute(String, String)

Initialisiert eine neue Instanz der ProvidePropertyAttribute-Klasse mit dem Namen der Eigenschaft und dem Typ des Empfängers.Initializes a new instance of the ProvidePropertyAttribute class with the name of the property and the type of its receiver.

ProvidePropertyAttribute(String, Type) ProvidePropertyAttribute(String, Type) ProvidePropertyAttribute(String, Type) ProvidePropertyAttribute(String, Type)

Initialisiert eine neue Instanz der ProvidePropertyAttribute-Klasse mit dem Namen der Eigenschaft und deren Type.Initializes a new instance of the ProvidePropertyAttribute class with the name of the property and its Type.

Eigenschaften

PropertyName PropertyName PropertyName PropertyName

Ruft den Namen einer Eigenschaft ab, die von dieser Klasse bereitgestellt wird.Gets the name of a property that this class provides.

ReceiverTypeName ReceiverTypeName ReceiverTypeName ReceiverTypeName

Ruft den Namen des Datentyps ab, den diese Eigenschaft erweitern kann.Gets the name of the data type this property can extend.

TypeId TypeId TypeId TypeId

Ruft einen eindeutigen Bezeichner für dieses Attribut ab.Gets a unique identifier for this attribute.

Methoden

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Gibt zurück, ob der Wert des angegebenen Objekts gleich dem aktuellen ProvidePropertyAttribute ist.Returns whether the value of the given object is equal to the current ProvidePropertyAttribute.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Gibt den Hashcode für diese Instanz zurück.Returns the hash code for this instance.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

Gibt beim Überschreiben in einer abgeleiteten Klasse an, ob der Wert der Instanz der Standardwert für die abgeleitete Klasse ist.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Inherited from Attribute)
Match(Object) Match(Object) Match(Object) Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Explizite Schnittstellenimplementierungen

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Gilt für: