BindableAttribute Klasse

Definition

Gibt an, ob ein Member normalerweise für Bindungen verwendet wird. Diese Klasse kann nicht vererbt 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 als geeignet markiert, 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 von für überprüft BindableAttribute MyProperty wird. Zunächst ruft der Code ein PropertyDescriptorCollection -Objekt mit allen Eigenschaften für das -Objekt ab. Als Nächstes indiziert der Code in den PropertyDescriptorCollection , um MyProperty abzurufen. Schließlich gibt der Code die Attribute für diese Eigenschaft zurück und speichert sie in der Attributes-Variablen. Im Codebeispiel werden zwei verschiedene Möglichkeiten zum Überprüfen des Werts von BindableAttribute dargestellt. 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 markiert BindableAttribute 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 Elemente , in der Regel Eigenschaften, für ein Steuerelement angeben.

Wenn eine Eigenschaft mit markiert wurde, die BindableAttribute auf festgelegt true ist, sollte eine Eigenschaftsänderungsbenachrichtigung für diese Eigenschaft ausgelöst werden. Dies bedeutet, dass die Bindable zweiseitige Datenbindung unterstützt wird, wenn die -Eigenschaft Yes ist. Wenn Bindable No ist, können Sie weiterhin eine Bindung an die Eigenschaft erstellen. Sie sollte jedoch nicht im Standardsatz der Eigenschaften angezeigt werden, an die eine Bindung erfolgen soll, da sie möglicherweise eine Benachrichtigung über Eigenschaftenänderungen auslösen kann.

Hinweis

Wenn Sie eine Eigenschaft mit BindableAttribute auf festgelegt true markieren, wird der Wert dieses Attributs auf den konstanten Member Yes festgelegt. Für eine Eigenschaft, die mit dem BindableAttribute auf markiert false ist, ist der Wert No . Daher müssen Sie das Attribut als oder angeben, um den Wert dieses Attributs im Code zu BindableAttribute.Yes BindableAttribute.No überprüfen.

Achtung

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

Weitere Informationen finden Sie unter Attribute.

Konstruktoren

BindableAttribute(BindableSupport)

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

BindableAttribute(BindableSupport, BindingDirection)

Initialisiert eine neue Instanz der BindableAttribute-Klasse.

BindableAttribute(Boolean)

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

BindableAttribute(Boolean, BindingDirection)

Initialisiert eine neue Instanz der BindableAttribute-Klasse.

Felder

Default

Gibt den Standardwert für das BindableAttribute an, der No ist. Dieses Feld ist schreibgeschützt.

No

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

Yes

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

Eigenschaften

Bindable

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

Direction

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

TypeId

Ruft bei Implementierung in einer abgeleiteten Klasse einen eindeutigen Bezeichner für dieses Attribute ab.

(Geerbt von Attribute)

Methoden

Equals(Object)

Bestimmt, ob zwei BindableAttribute-Objekte gleich sind.

GetHashCode()

Fungiert als eine Hashfunktion für die BindableAttribute-Klasse.

GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Bestimmt, ob dieses Attribut der Standardwert ist.

Match(Object)

Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht.

(Geerbt von Attribute)
MemberwiseClone()

Erstellt eine flache Kopie des 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 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 deren Hilfe 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)

Stellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit.

(Geerbt von Attribute)

Gilt für

Siehe auch