Freigeben über


AmbientValueAttribute Klasse

Definition

Gibt den Wert an, der an eine Eigenschaft übergeben werden soll, damit die Eigenschaft ihren Wert aus einer anderen Quelle abrufen kann. Dies ist bekannt als Ambiente. Diese Klasse kann nicht vererbt werden.

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

Beispiele

Das folgende Codebeispiel veranschaulicht die Verwendung des AmbientValueAttribute Umgebungsverhaltens für eine Eigenschaft, die aufgerufen wird AlertForeColor. Eine vollständige Codeauflistung finden Sie unter How to: Apply Attributes in Windows Forms Controls.

[AmbientValue(typeof(Color), "Empty")]
[Category("Appearance")]
[DefaultValue(typeof(Color), "White")]
[Description("The color used for painting alert text.")]
public Color AlertForeColor
{
    get =>
        _alertForeColorValue == Color.Empty &&
        Parent != null
            ? Parent.ForeColor
            : _alertForeColorValue;

    set => _alertForeColorValue = value;
}

// This method is used by designers to enable resetting the
// property to its default value.
public void ResetAlertForeColor() =>
    AlertForeColor = s_defaultAlertForeColorValue;

// This method indicates to designers whether the property
// value is different from the ambient value, in which case
// the designer should persist the value.
bool ShouldSerializeAlertForeColor() =>
    _alertForeColorValue != s_ambientColorValue;
<AmbientValue(GetType(Color), "Empty"), _
Category("Appearance"), _
DefaultValue(GetType(Color), "White"), _
Description("The color used for painting alert text.")> _
Public Property AlertForeColor() As Color
    Get
        If Me.alertForeColorValue = Color.Empty AndAlso (Me.Parent IsNot Nothing) Then
            Return Parent.ForeColor
        End If

        Return Me.alertForeColorValue
    End Get

    Set(ByVal value As Color)
        Me.alertForeColorValue = value
    End Set
End Property

' This method is used by designers to enable resetting the
' property to its default value.
Public Sub ResetAlertForeColor()
    Me.AlertForeColor = AttributesDemoControl.defaultAlertForeColorValue
End Sub

' This method indicates to designers whether the property
' value is different from the ambient value, in which case
' the designer should persist the value.
Private Function ShouldSerializeAlertForeColor() As Boolean
    Return Me.alertForeColorValue <> AttributesDemoControl.ambientColorValue
End Function

Hinweise

Wenn eine Eigenschaft eines Steuerelements ein Umgebungsverhalten aufweist, muss dieses Attribut vorhanden sein. Umgebungseigenschaften fragen das übergeordnete Element nach ihrem Wert ab, z. B. eine Control.Font Eigenschaft oder eine Control.BackColor Eigenschaft.

In der Regel verwendet ein visueller Designer das AmbientValueAttribute Attribut, um zu entscheiden, welcher Wert für eine Eigenschaft beibehalten werden soll. Dies ist in der Regel ein Wert, der bewirkt, dass die Eigenschaft ihren Wert aus einer anderen Quelle erhält. Ein Beispiel für einen Umgebungswert ist Color.Empty der Umgebungswert für die BackColor Eigenschaft. Wenn Sie über ein Steuerelement in einem Formular verfügen und die BackColor Eigenschaft des Steuerelements auf eine andere Farbe als die BackColor Eigenschaft des Formulars festgelegt ist, können Sie die BackColor Eigenschaft des Steuerelements auf die des Formulars zurücksetzen, indem Sie das BackColor Steuerelement auf Color.Empty".

Konstruktoren

Name Beschreibung
AmbientValueAttribute(Boolean)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei ein boolescher Wert für seinen Wert angegeben ist.

AmbientValueAttribute(Byte)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei für den Wert eine 8-Bit-Ganzzahl ohne Vorzeichen angegeben wird.

AmbientValueAttribute(Char)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei ein Unicode-Zeichen für den Wert angegeben ist.

AmbientValueAttribute(Double)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei für den Wert eine Gleitkommazahl mit doppelter Genauigkeit angegeben wird.

AmbientValueAttribute(Int16)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei für den Wert eine 16-Bit-Ganzzahl mit Vorzeichen angegeben wird.

AmbientValueAttribute(Int32)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei für den Wert eine 32-Bit-Ganzzahl mit Vorzeichen angegeben wird.

AmbientValueAttribute(Int64)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei für den Wert eine 64-Bit-Ganzzahl mit Vorzeichen angegeben wird.

AmbientValueAttribute(Object)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei ein Objekt für seinen Wert angegeben ist.

AmbientValueAttribute(Single)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei für den Wert eine Gleitkommazahl mit einfacher Genauigkeit angegeben wird.

AmbientValueAttribute(String)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, wobei eine Zeichenfolge für den Wert angegeben ist.

AmbientValueAttribute(Type, String)

Initialisiert eine neue Instanz der AmbientValueAttribute Klasse, je nach Wert und Typ.

Eigenschaften

Name Beschreibung
TypeId

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

(Geerbt von Attribute)
Value

Ruft das Objekt ab, das den Wert dieses AmbientValueAttributeObjekts darstellt.

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob der angegebene AmbientValueAttribute Wert gleich dem aktuellen AmbientValueAttributeist.

GetHashCode()

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

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
IsDefaultAttribute()

Wenn sie in einer abgeleiteten Klasse überschrieben wird, gibt an, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist.

(Geerbt von Attribute)
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: