BindableAttribute Klasa

Definicja

Określa, czy element członkowski jest zazwyczaj używany do powiązania.Specifies whether a member is typically used for binding. Klasa ta nie może być dziedziczona.This class cannot be inherited.

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

Przykłady

Poniższy przykład kodu oznacza właściwość, zgodnie z potrzebami, aby powiązać dane z.The following code example marks a property as appropriate to bind data to.

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

Następny przykład kodu pokazuje, jak sprawdzić wartość BindableAttribute w MyProperty.The next code example shows how to check the value of the BindableAttribute for MyProperty. Najpierw kod pobiera PropertyDescriptorCollection ze wszystkimi właściwościami obiektu.First, the code gets a PropertyDescriptorCollection with all the properties for the object. Następnie można uzyskać MyPropertyindeksów kodu do PropertyDescriptorCollection.Next, the code indexes into the PropertyDescriptorCollection to get MyProperty. Na koniec kod zwraca atrybuty dla tej właściwości i zapisuje je w zmiennej atrybutów.Finally, the code returns the attributes for this property and saves them in the attributes variable. W przykładzie kodu prezentowane są dwa różne sposoby sprawdzania wartości BindableAttribute.The code example presents two different ways to check the value of the BindableAttribute. W drugim fragmencie kodu, przykład wywołuje metodę Equals.In the second code fragment, the example calls the Equals method. W ostatnim fragmencie kodu przykład używa właściwości Bindable do sprawdzenia wartości.In the last code fragment, the example uses the Bindable property to check the value.

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

Jeśli klasa została oznaczona przy użyciu BindableAttribute, użyj następującego przykładowego kodu, aby sprawdzić wartość.If you marked a class with the BindableAttribute, use the following code example to check the value.

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 

Uwagi

Można określić ten atrybut dla wielu członków, zazwyczaj właściwości, na kontrolce.You can specify this attribute for multiple members, typically properties, on a control.

Jeśli właściwość została oznaczona przy użyciu BindableAttribute ustawionej na true, dla tej właściwości powinno zostać zgłoszone powiadomienie o zmianie właściwości.If a property has been marked with the BindableAttribute set to true, then a property change notification should be raised for that property. Oznacza to, że jeśli właściwość Bindable jest Yes, obsługiwane jest dwukierunkowe powiązanie danych.This means that if the Bindable property is Yes, then two-way data binding is supported. Jeśli Bindable jest No, nadal można powiązać z właściwością, ale nie powinien być pokazywany w domyślnym zestawie właściwości do powiązania, ponieważ może on lub nie zgłaszał powiadomienia o zmianie właściwości.If Bindable is No, you can still bind to the property, but it should not be shown in the default set of properties to bind to, because it might or might not raise a property change notification.

Uwaga

Po oznaczeniu właściwości BindableAttribute ustawioną na true, wartość tego atrybutu jest ustawiana na stałą Yeselementu członkowskiego.When you mark a property with BindableAttribute set to true, the value of this attribute is set to the constant member Yes. Dla właściwości oznaczonej BindableAttribute ustawioną na false, wartość jest No.For a property marked with the BindableAttribute set to false, the value is No. W związku z tym, aby sprawdzić wartość tego atrybutu w kodzie, należy określić atrybut jako BindableAttribute.Yes lub BindableAttribute.No.Therefore, to check the value of this attribute in your code, you must specify the attribute as BindableAttribute.Yes or BindableAttribute.No.

Przestroga

Tego atrybutu można używać tylko w czasie projektowania.You can use this attribute at design time only. Nic nie pozwala na powiązanie z żadną właściwością w czasie wykonywania.Nothing prevents you from binding to any property during run time.

Aby uzyskać więcej informacji, zobacz atrybuty.For more information, see Attributes.

Konstruktory

BindableAttribute(BindableSupport)

Inicjuje nowe wystąpienie klasy BindableAttribute z jedną z wartości BindableSupport.Initializes a new instance of the BindableAttribute class with one of the BindableSupport values.

BindableAttribute(BindableSupport, BindingDirection)

Inicjuje nowe wystąpienie klasy BindableAttribute klasy.Initializes a new instance of the BindableAttribute class.

BindableAttribute(Boolean)

Inicjuje nowe wystąpienie klasy BindableAttribute z wartością logiczną.Initializes a new instance of the BindableAttribute class with a Boolean value.

BindableAttribute(Boolean, BindingDirection)

Inicjuje nowe wystąpienie klasy BindableAttribute klasy.Initializes a new instance of the BindableAttribute class.

Pola

Default

Określa wartość domyślną BindableAttribute, która jest No.Specifies the default value for the BindableAttribute, which is No. To pole jest tylko do odczytu.This field is read-only.

No

Określa, że właściwość nie jest zazwyczaj używana do powiązania.Specifies that a property is not typically used for binding. To pole jest tylko do odczytu.This field is read-only.

Yes

Określa, że właściwość jest zazwyczaj używana do wiązania.Specifies that a property is typically used for binding. To pole jest tylko do odczytu.This field is read-only.

Właściwości

Bindable

Pobiera wartość wskazującą, że właściwość jest zazwyczaj używana do powiązania.Gets a value indicating that a property is typically used for binding.

Direction

Pobiera wartość wskazującą kierunek lub kierunki powiązania danych tej właściwości.Gets a value indicating the direction or directions of this property's data binding.

TypeId

Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Odziedziczone po Attribute)

Metody

Equals(Object)

Określa, czy dwa obiekty BindableAttribute są równe.Determines whether two BindableAttribute objects are equal.

GetHashCode()

Służy jako funkcja skrótu dla klasy BindableAttribute.Serves as a hash function for the BindableAttribute class.

GetType()

Pobiera Type bieżącego wystąpienia.Gets the Type of the current instance.

(Odziedziczone po Object)
IsDefaultAttribute()

Określa, czy ten atrybut jest wartością domyślną.Determines if this attribute is the default.

Match(Object)

Gdy jest zastępowany w klasie pochodnej, zwraca wartość wskazującą, czy to wystąpienie jest zgodne z określonym obiektem.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Odziedziczone po Attribute)
MemberwiseClone()

Tworzy skróconą kopię bieżącego Object.Creates a shallow copy of the current Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg, który reprezentuje bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Jawne implementacje interfejsu

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

Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania.Maps a set of names to a corresponding set of dispatch identifiers.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Pobiera informacje o typie dla obiektu, którego można użyć do uzyskania informacji o typie dla interfejsu.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Odziedziczone po Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt.Provides access to properties and methods exposed by an object.

(Odziedziczone po Attribute)

Dotyczy

Zobacz też