AmbientValueAttribute Klasa

Definicja

Określa wartość do przekazania do właściwości, aby spowodować, że właściwość pobiera jej wartość z innego źródła. Jest to znane jako atmosfera. Klasa ta nie może być dziedziczona.

C#
[System.AttributeUsage(System.AttributeTargets.All)]
public sealed class AmbientValueAttribute : Attribute
Dziedziczenie
AmbientValueAttribute
Atrybuty

Przykłady

W poniższym przykładzie kodu pokazano użycie metody AmbientValueAttribute w celu wymuszenia zachowania otoczenia dla właściwości o nazwie AlertForeColor. Aby uzyskać pełną listę kodu, zobacz How to: Apply Attributes in Windows Forms Controls (Instrukcje: stosowanie atrybutów w kontrolkach Windows Forms).

C#
[AmbientValue(typeof(Color), "Empty")]
[Category("Appearance")]
[DefaultValue(typeof(Color), "White")]
[Description("The color used for painting alert text.")]
public Color AlertForeColor
{
    get
    {
        if (this.alertForeColorValue == Color.Empty &&
            this.Parent != null)
        {
            return Parent.ForeColor;
        }

        return this.alertForeColorValue;
    }

    set
    {
        this.alertForeColorValue = value;
    }
}

// This method is used by designers to enable resetting the
// property to its default value.
public void ResetAlertForeColor()
{
    this.AlertForeColor = AttributesDemoControl.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.
private bool ShouldSerializeAlertForeColor()
{
    return (this.alertForeColorValue != AttributesDemoControl.ambientColorValue);
}

Uwagi

Jeśli właściwość kontrolki ma zachowanie otoczenia, ten atrybut musi być obecny. Właściwości otoczenia wysyłają zapytanie względem ich wartości nadrzędnej, Control.Font na przykład właściwości lub Control.BackColor właściwości.

Zazwyczaj projektant wizualizacji używa atrybutu AmbientValueAttribute , aby zdecydować, która wartość ma być utrwalana dla właściwości. Jest to zazwyczaj wartość, która powoduje, że właściwość pobiera swoją wartość z innego źródła. Przykładem wartości otoczenia jest Color.Empty wartość otoczenia jako wartość otoczenia dla BackColor właściwości. Jeśli masz kontrolkę w formularzu, a BackColor właściwość kontrolki jest ustawiona na inny kolor niż BackColor właściwość formularza, możesz zresetować BackColor właściwość kontrolki do formularza, ustawiając BackColor dla kontrolki Color.Emptywartość .

Konstruktory

AmbientValueAttribute(Boolean)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę wartość logiczną dla jej wartości.

AmbientValueAttribute(Byte)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę 8-bitową liczbę całkowitą bez znaku dla jej wartości.

AmbientValueAttribute(Char)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę znak Unicode dla jego wartości.

AmbientValueAttribute(Double)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę liczbę zmiennoprzecinkową o podwójnej precyzji dla jej wartości.

AmbientValueAttribute(Int16)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę 16-bitową liczbę całkowitą ze znakiem dla jej wartości.

AmbientValueAttribute(Int32)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę 32-bitową liczbę całkowitą ze znakiem dla jej wartości.

AmbientValueAttribute(Int64)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę 64-bitową liczbę całkowitą ze znakiem dla jej wartości.

AmbientValueAttribute(Object)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę obiekt dla jego wartości.

AmbientValueAttribute(Single)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę liczbę zmiennoprzecinkową o pojedynczej precyzji dla jej wartości.

AmbientValueAttribute(String)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę ciąg dla jego wartości.

AmbientValueAttribute(Type, String)

Inicjuje AmbientValueAttribute nowe wystąpienie klasy, biorąc pod uwagę wartość i jej typ.

Właściwości

TypeId

Po zaimplementowaniu w klasie pochodnej pobiera unikatowy identyfikator dla tego Attributeelementu .

(Odziedziczone po Attribute)
Value

Pobiera obiekt, który jest wartością tego AmbientValueAttributeobiektu .

Metody

Equals(Object)

Określa, czy określona AmbientValueAttribute wartość jest równa bieżącej AmbientValueAttributewartości .

GetHashCode()

Zwraca wartość skrótu dla tego wystąpienia.

GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
IsDefaultAttribute()

Podczas zastępowania w klasie pochodnej wskazuje, czy wartość tego wystąpienia jest wartością domyślną dla klasy pochodnej.

(Odziedziczone po Attribute)
Match(Object)

Po przesłonięciu w klasie pochodnej zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi.

(Odziedziczone po Attribute)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Jawne implementacje interfejsu

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

Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania.

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

Pobiera informacje o typie dla obiektu, który może służyć do pobierania informacji o typie dla interfejsu.

(Odziedziczone po Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 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.

(Odziedziczone po Attribute)

Dotyczy

Produkt Wersje
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1