Freigeben über


BindableAttribute Klasse

Definition

Gibt an, ob ein Element in der Regel für die Bindung verwendet wird. Diese Klasse kann nicht geerbt werden.

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

Beispiele

Im folgenden Codebeispiel wird eine Eigenschaft entsprechend gekennzeichnet, an die Daten gebunden werden sollen.

property int MyProperty 
{
   [System::ComponentModel::Bindable(true)]
   int get()
   {
      // Insert code here.
      return 0;
   }

   [System::ComponentModel::Bindable(true)]
   void set( int )
   {
      // Insert code here.
   }
}
[Bindable(true)]
 public int MyProperty {
    get {
       // Insert code here.
       return 0;
    }
    set {
       // Insert code here.
    }
 }
<Bindable(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 Codebeispiel zeigt, wie der Wert der BindableAttribute für MyPropertyüberprüft wird. Zunächst ruft der Code eine PropertyDescriptorCollection mit allen Eigenschaften für das Objekt ab. Als Nächstes indiziert der Code in der PropertyDescriptorCollection, um MyPropertyzu erhalten. Schließlich gibt der Code die Attribute für diese Eigenschaft zurück und speichert sie in der Attributvariable. Im Codebeispiel werden zwei verschiedene Möglichkeiten zum Überprüfen des Werts der BindableAttributedargestellt. Im zweiten Codefragment ruft das Beispiel die Equals-Methode auf. Im letzten Codefragment verwendet das Beispiel die Bindable-Eigenschaft, um den Wert zu überprüfen.

using namespace System::ComponentModel;

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

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

// This is another way to see whether the property is bindable.
BindableAttribute^ myAttribute = static_cast<BindableAttribute^>(attributes[ BindableAttribute::typeid ]);
if ( myAttribute->Bindable )
{
   // Insert code here.
}

// Yet another way to see whether the property is bindable.
if ( attributes->Contains( BindableAttribute::Yes ) )
{
   // Insert code here.
}
   // Gets the attributes for the property.
    AttributeCollection attributes =
       TypeDescriptor.GetProperties(this)["MyProperty"].Attributes;

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

    // This is another way to see whether the property is bindable.
    BindableAttribute myAttribute =
       (BindableAttribute)attributes[typeof(BindableAttribute)];
    if(myAttribute.Bindable) {
       // Insert code here.
    }

// Yet another way to see whether the property is bindable.
if (attributes.Contains(BindableAttribute.Yes)) {
   // 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 BindableAttribute is Yes.
    If attributes(GetType(BindableAttribute)).Equals(BindableAttribute.Yes) Then
        ' Insert code here.
    End If 
    
    ' This is another way to see whether the property is bindable.
    Dim myAttribute As BindableAttribute = _
        CType(attributes(GetType(BindableAttribute)), BindableAttribute)
    If myAttribute.Bindable Then
        ' Insert code here.
    End If 

' Yet another way to see whether the property is bindable.
If attributes.Contains(BindableAttribute.Yes) Then
' Insert code here.
End If

Wenn Sie eine Klasse mit dem BindableAttributemarkiert haben, verwenden Sie das folgende Codebeispiel, um den Wert zu überprüfen.

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

Hinweise

Sie können dieses Attribut für mehrere Member, in der Regel Eigenschaften, für ein Steuerelement angeben.

Wenn eine Eigenschaft mit dem auf truefestgelegten BindableAttribute markiert wurde, sollte für diese Eigenschaft eine Eigenschaftsänderungsbenachrichtigung ausgelöst werden. Dies bedeutet, dass die bidirektionale Datenbindung unterstützt wird, wenn die Bindable-Eigenschaft Yesist. Wenn BindableNoist, können Sie trotzdem eine Bindung an die Eigenschaft ausführen, sie sollte jedoch nicht im Standardsatz der eigenschaften angezeigt werden, an die eine Bindung gebunden werden soll, da sie möglicherweise eine Benachrichtigung über Die Eigenschaftsänderung auslöst oder nicht.

Anmerkung

Wenn Sie eine Eigenschaft mit BindableAttribute auf truefestlegen, wird der Wert dieses Attributs auf das konstante Element Yesfestgelegt. Bei einer Eigenschaft, die mit dem BindableAttribute auf falsefestgelegt ist, wird der Wert No. Um den Wert dieses Attributs in Ihrem Code zu überprüfen, müssen Sie das Attribut daher als BindableAttribute.Yes oder BindableAttribute.Noangeben.

Vorsicht

Sie können dieses Attribut nur zur Entwurfszeit verwenden. Nichts verhindert, dass Sie während der Laufzeit an eine Eigenschaft binden.

Weitere Informationen finden Sie unter Attributes.

Konstruktoren

BindableAttribute(BindableSupport, BindingDirection)

Initialisiert eine neue Instanz der BindableAttribute Klasse.

BindableAttribute(BindableSupport)

Initialisiert eine neue Instanz der BindableAttribute Klasse mit einem der BindableSupport Werte.

BindableAttribute(Boolean, BindingDirection)

Initialisiert eine neue Instanz der BindableAttribute Klasse.

BindableAttribute(Boolean)

Initialisiert eine neue Instanz der BindableAttribute Klasse mit einem booleschen Wert.

Felder

Default

Gibt den Standardwert für den BindableAttributean, der Noist. Dieses Feld ist schreibgeschützt.

No

Gibt an, dass eine Eigenschaft normalerweise nicht für die Bindung verwendet wird. Dieses Feld ist schreibgeschützt.

Yes

Gibt an, dass eine Eigenschaft in der Regel für die Bindung verwendet wird. Dieses Feld ist schreibgeschützt.

Eigenschaften

Bindable

Ruft einen Wert ab, der angibt, dass eine Eigenschaft normalerweise für die Bindung verwendet wird.

Direction

Ruft einen Wert ab, der die Richtung oder Richtung der Datenbindung dieser Eigenschaft angibt.

TypeId

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

(Geerbt von Attribute)

Methoden

Equals(Object)

Bestimmt, ob zwei BindableAttribute Objekte gleich sind.

GetHashCode()

Dient als Hashfunktion für die BindableAttribute Klasse.

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

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

Ordnet einen Satz von Namen einem entsprechenden Satz von Verteiler-IDs 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 Typinformationsschnittstellen ab, die ein Objekt bereitstellt (entweder 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