Freigeben über


MergablePropertyAttribute Klasse

Definition

Gibt an, dass diese Eigenschaft mit Eigenschaften kombiniert werden kann, die zu anderen Objekten in einem Eigenschaftenfenster gehören.

public ref class MergablePropertyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class MergablePropertyAttribute : Attribute
public sealed class MergablePropertyAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All)>]
type MergablePropertyAttribute = class
    inherit Attribute
type MergablePropertyAttribute = class
    inherit Attribute
Public NotInheritable Class MergablePropertyAttribute
Inherits Attribute
Vererbung
MergablePropertyAttribute
Attribute

Beispiele

Im folgenden Beispiel wird eine Eigenschaft entsprechend zum Zusammenführen markiert.

public:
   [MergableProperty(true)]
   property int MyProperty 
   {
      int get()
      {
         // Insert code here.
         return 0;
      }
      void set( int value )
      {
         // Insert code here.
      }
   }
[MergableProperty(true)]
public int MyProperty
{
    get =>
        // Insert code here.
        0;
    set
    {
        // Insert code here.
    }
}
<MergableProperty(True)> _
Public Property MyProperty() As Integer
    Get
        ' Insert code here.
        Return 0
    End Get
    Set
        ' Insert code here.
    End Set 
End Property

Das nächste Beispiel zeigt, wie der Wert der MergablePropertyAttribute Datei überprüft MyPropertywird. Zuerst ruft der Code eine PropertyDescriptorCollection mit allen Eigenschaften für das Objekt ab. Als Nächstes wird es indiziert PropertyDescriptorCollection , um abzurufen MyProperty. Anschließend werden die Attribute für diese Eigenschaft zurückgegeben und in der Attributvariable gespeichert.

Im Beispiel werden zwei verschiedene Möglichkeiten zum Überprüfen des Werts der MergablePropertyAttribute. Im zweiten Codefragment ruft das Beispiel die Equals Methode mit einem static Wert auf. Im letzten Codefragment verwendet das Beispiel die AllowMerge Eigenschaft, um den Wert zu überprüfen.

// Gets the attributes for the property.
AttributeCollection^ attributes = TypeDescriptor::GetProperties( this )[ "MyProperty" ]->Attributes;

// Checks to see if the value of the MergablePropertyAttribute is Yes.
if ( attributes[ MergablePropertyAttribute::typeid ]->Equals( MergablePropertyAttribute::Yes ) )
{
   // Insert code here.
}

// This is another way to see if the property is bindable.
MergablePropertyAttribute^ myAttribute = dynamic_cast<MergablePropertyAttribute^>(attributes[ MergablePropertyAttribute::typeid ]);
if ( myAttribute->AllowMerge )
{
   // Insert code here.
}
// Gets the attributes for the property.
AttributeCollection attributes =
   TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;

// Checks to see if the value of the MergablePropertyAttribute is Yes.
if (attributes[typeof(MergablePropertyAttribute)].Equals(MergablePropertyAttribute.Yes))
{
    // Insert code here.
}

// This is another way to see if the property is bindable.
MergablePropertyAttribute myAttribute =
   (MergablePropertyAttribute)attributes[typeof(MergablePropertyAttribute)];
if (myAttribute.AllowMerge)
{
    // Insert code here.
}
' Gets the attributes for the property.
Dim attributes As AttributeCollection = _
    TypeDescriptor.GetProperties(Me)("MyProperty").Attributes

' Checks to see if the value of the MergablePropertyAttribute is Yes.
If attributes(GetType(MergablePropertyAttribute)).Equals(MergablePropertyAttribute.Yes) Then
    ' Insert code here.
End If 

' This is another way to see if the property is bindable.
Dim myAttribute As MergablePropertyAttribute = _
    CType(attributes(GetType(MergablePropertyAttribute)), MergablePropertyAttribute)
If myAttribute.AllowMerge Then
    ' Insert code here.
End If

Wenn Sie eine Klasse mit der MergablePropertyAttributeKlasse markiert haben, verwenden Sie den folgenden Code, um den Wert zu überprüfen.

AttributeCollection^ attributes = TypeDescriptor::GetAttributes( MyProperty );
if ( attributes[ MergablePropertyAttribute::typeid ]->Equals( MergablePropertyAttribute::Yes ) )
{
   // Insert code here.
}
AttributeCollection attributes =
    TypeDescriptor.GetAttributes(MyProperty);
if (attributes[typeof(MergablePropertyAttribute)].Equals(MergablePropertyAttribute.Yes))
{
    // Insert code here.
}
Dim attributes As AttributeCollection = TypeDescriptor.GetAttributes(MyProperty)
If attributes(GetType(MergablePropertyAttribute)).Equals(MergablePropertyAttribute.Yes) Then
    ' Insert code here.
End If

Hinweise

Eigenschaften, die mit dem MergablePropertyAttribute Satz true gekennzeichnet sind, können mit Eigenschaften kombiniert werden, die zu anderen Objekten in einem Eigenschaftenfenster gehören. Eigenschaften, die mit dem MergablePropertyAttribute Satz false gekennzeichnet sind, müssen separat angezeigt werden. Der Standardwert lautet true.

Hinweis

Wenn Sie eine Eigenschaft mit dem MergablePropertyAttribute Wert auf "Set" truemarkieren, wird der Wert dieses Attributs auf das konstante Element Yesfestgelegt. Für eine Eigenschaft, die mit der MergablePropertyAttribute Eigenschaft festgelegt ist false, lautet Noder Wert . Wenn Sie daher den Wert dieses Attributs in Ihrem Code überprüfen möchten, müssen Sie das Attribut als MergablePropertyAttribute.Yes oder MergablePropertyAttribute.No.

Weitere Informationen finden Sie unter Attribute.

Konstruktoren

Name Beschreibung
MergablePropertyAttribute(Boolean)

Initialisiert eine neue Instanz der MergablePropertyAttribute-Klasse.

Felder

Name Beschreibung
Default

Gibt den Standardwert an, d Yes. h. eine Eigenschaft, kann mit Eigenschaften kombiniert werden, die zu anderen Objekten in einem Eigenschaftenfenster gehören. Dieses static Feld ist schreibgeschützt.

No

Gibt an, dass eine Eigenschaft nicht mit Eigenschaften kombiniert werden kann, die zu anderen Objekten in einem Eigenschaftenfenster gehören. Dieses static Feld ist schreibgeschützt.

Yes

Gibt an, dass eine Eigenschaft mit Eigenschaften kombiniert werden kann, die zu anderen Objekten in einem Eigenschaftenfenster gehören. Dieses static Feld ist schreibgeschützt.

Eigenschaften

Name Beschreibung
AllowMerge

Ruft einen Wert ab, der angibt, ob diese Eigenschaft mit Eigenschaften kombiniert werden kann, die zu anderen Objekten in einem Eigenschaftenfenster gehören.

TypeId

Wenn sie in einer abgeleiteten Klasse implementiert wird, wird ein eindeutiger Bezeichner für diese Attribute.

(Geerbt von Attribute)

Methoden

Name Beschreibung
Equals(Object)

Gibt an, ob diese Instanz und ein angegebenes Objekt gleich sind.

GetHashCode()

Gibt den Hashcode für diese Instanz zurück.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Bestimmt, ob dieses Attribut die Standardeinstellung ist.

Match(Object)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem angegebenen Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

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

Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu.

(Geerbt von Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Ruft die Typinformationen für ein Objekt ab, mit denen die Typinformationen für eine Schnittstelle abgerufen werden können.

(Geerbt von Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1).

(Geerbt von Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Bietet Zugriff auf Eigenschaften und Methoden, die von einem Objekt verfügbar gemacht werden.

(Geerbt von Attribute)

Gilt für:

Weitere Informationen