AmbientValueAttribute Klass

Definition

Anger värdet som ska skickas till en egenskap för att få egenskapen att hämta dess värde från en annan källa. Detta kallas för atmosfär. Det går inte att ärva den här klassen.

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
Arv
AmbientValueAttribute
Attribut

Exempel

Följande kodexempel visar hur du använder AmbientValueAttribute för att framtvinga omgivande beteende för en egenskap som heter AlertForeColor. En fullständig kodlista finns i 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

Kommentarer

Om en egenskap på en kontroll har omgivande beteende måste det här attributet finnas. Omgivande egenskaper frågar sin överordnade om värdet, till exempel en Control.Font egenskap eller en Control.BackColor egenskap.

Vanligtvis använder AmbientValueAttribute en visuell designer attributet för att bestämma vilket värde som ska sparas för en egenskap. Det här är vanligtvis ett värde som gör att egenskapen får sitt värde från en annan källa. Ett exempel på ett omgivande värde är Color.Empty som omgivande värde för BackColor egenskapen. Om du har en kontroll i ett formulär och BackColor kontrollens egenskap är inställd på en annan färg än BackColor formulärets egenskap, kan du återställa BackColor kontrollens egenskap till formulärets genom att ställa in BackColor kontrollen på Color.Empty.

Konstruktorer

Name Description
AmbientValueAttribute(Boolean)

Initierar en ny instans av AmbientValueAttribute klassen med ett booleskt värde för dess värde.

AmbientValueAttribute(Byte)

Initierar en ny instans av AmbientValueAttribute klassen, givet ett 8-bitars osignerat heltal för dess värde.

AmbientValueAttribute(Char)

Initierar en ny instans av AmbientValueAttribute klassen, givet ett Unicode-tecken för dess värde.

AmbientValueAttribute(Double)

Initierar en ny instans av AmbientValueAttribute klassen, givet ett flyttal med dubbel precision för dess värde.

AmbientValueAttribute(Int16)

Initierar en ny instans av AmbientValueAttribute klassen med ett 16-bitars signerat heltal för dess värde.

AmbientValueAttribute(Int32)

Initierar en ny instans av AmbientValueAttribute klassen med ett 32-bitars signerat heltal för dess värde.

AmbientValueAttribute(Int64)

Initierar en ny instans av AmbientValueAttribute klassen med ett 64-bitars signerat heltal för dess värde.

AmbientValueAttribute(Object)

Initierar en ny instans av AmbientValueAttribute klassen, givet ett objekt för dess värde.

AmbientValueAttribute(Single)

Initierar en ny instans av AmbientValueAttribute klassen, givet ett flyttal med enkel precision för dess värde.

AmbientValueAttribute(String)

Initierar en ny instans av AmbientValueAttribute klassen, givet en sträng för dess värde.

AmbientValueAttribute(Type, String)

Initierar en ny instans av AmbientValueAttribute klassen med tanke på värdet och dess typ.

Egenskaper

Name Description
TypeId

När den implementeras i en härledd klass hämtar du en unik identifierare för den här Attribute.

(Ärvd från Attribute)
Value

Hämtar objektet som är värdet för det här AmbientValueAttribute.

Metoder

Name Description
Equals(Object)

Avgör om den angivna AmbientValueAttribute är lika med den aktuella AmbientValueAttribute.

GetHashCode()

Returnerar hash-koden för den här instansen.

GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
IsDefaultAttribute()

När den åsidosättas i en härledd klass anger du om värdet för den här instansen är standardvärdet för den härledda klassen.

(Ärvd från Attribute)
Match(Object)

När den åsidosätts i en härledd klass returneras ett värde som anger om den här instansen är lika med ett angivet objekt.

(Ärvd från Attribute)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Explicita gränssnittsimplementeringar

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

Mappar en uppsättning namn till en motsvarande uppsättning av sändningsidentifierare.

(Ärvd från Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Hämtar typinformationen för ett objekt, som kan användas för att hämta typinformationen för ett gränssnitt.

(Ärvd från Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Hämtar antalet typinformationsgränssnitt som ett objekt tillhandahåller (antingen 0 eller 1).

(Ärvd från Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Ger åtkomst till egenskaper och metoder som exponeras av ett objekt.

(Ärvd från Attribute)

Gäller för