AmbientValueAttribute Třída

Definice

Určuje hodnotu, která se má předat vlastnosti, aby vlastnost získala hodnotu z jiného zdroje. To se označuje jako atmosféra. Tato třída se nemůže dědit.

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
Dědičnost
AmbientValueAttribute
Atributy

Příklady

Následující příklad kódu ukazuje použití AmbientValueAttribute k vynucení chování okolí pro vlastnost s názvem AlertForeColor. Úplný výpis kódu najdete v tématu Postupy: Použití atributů v ovládacích prvcích model Windows Forms.

[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);
}
<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

Poznámky

Pokud vlastnost ovládacího prvku má chování okolí, musí být tento atribut přítomen. Vlastnosti okolí se dotazují nadřazeného objektu Control.Font na jejich hodnotu, například vlastnost nebo Control.BackColor vlastnost.

Vizuální návrhář obvykle používá AmbientValueAttribute atribut k rozhodnutí, která hodnota se má zachovat pro vlastnost. Obvykle se jedná o hodnotu, která způsobí, že vlastnost získá svou hodnotu z jiného zdroje. Příkladem hodnoty okolí je Color.Empty hodnota okolí pro BackColor vlastnost. Pokud máte ovládací prvek ve formuláři a BackColor vlastnost ovládacího prvku je nastavená na jinou barvu než BackColor vlastnost formuláře, můžete vlastnost ovládacího prvku obnovit BackColor na vlastnost formuláře nastavením BackColor ovládacího prvku na Color.Emptyhodnotu .

Konstruktory

AmbientValueAttribute(Boolean)

Inicializuje novou instanci AmbientValueAttribute třídy s logickou hodnotou pro její hodnotu.

AmbientValueAttribute(Byte)

Inicializuje novou instanci AmbientValueAttribute třídy s ohledem na 8bitové celé číslo bez znaménka pro jeho hodnotu.

AmbientValueAttribute(Char)

Inicializuje novou instanci AmbientValueAttribute třídy s ohledem na znak Unicode pro jeho hodnotu.

AmbientValueAttribute(Double)

Inicializuje novou instanci AmbientValueAttribute třídy s dvojitou přesností číslo s plovoucí desetinou čárkou pro jeho hodnotu.

AmbientValueAttribute(Int16)

Inicializuje novou instanci AmbientValueAttribute třídy s 16bitovým celočíselným podpisem pro jeho hodnotu.

AmbientValueAttribute(Int32)

Inicializuje novou instanci AmbientValueAttribute třídy s 32bitovým celočíselným podpisem pro jeho hodnotu.

AmbientValueAttribute(Int64)

Inicializuje novou instanci AmbientValueAttribute třídy zadanou 64bitovou celočíselnou hodnotou.

AmbientValueAttribute(Object)

Inicializuje novou instanci AmbientValueAttribute třídy vzhledem k objektu pro jeho hodnotu.

AmbientValueAttribute(Single)

Inicializuje novou instanci AmbientValueAttribute třídy s jednou přesností číslo s plovoucí desetinou čárkou pro jeho hodnotu.

AmbientValueAttribute(String)

Inicializuje novou instanci AmbientValueAttribute třídy s ohledem na řetězec pro její hodnotu.

AmbientValueAttribute(Type, String)

Inicializuje novou instanci AmbientValueAttribute třídy s ohledem na hodnotu a její typ.

Vlastnosti

TypeId

Při implementaci v odvozené třídě získá jedinečný identifikátor pro tuto Attributetřídu .

(Zděděno od Attribute)
Value

Získá objekt, který je hodnotou tohoto AmbientValueAttributeobjektu .

Metody

Equals(Object)

Určuje, zda se zadaná AmbientValueAttribute hodnota rovná aktuální AmbientValueAttributehodnotě .

GetHashCode()

Vrátí hodnotu hash pro tuto instanci.

GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
IsDefaultAttribute()

Při přepsání v odvozené třídě označuje, zda je hodnota této instance výchozí hodnotou pro odvozenou třídu.

(Zděděno od Attribute)
Match(Object)

Při přepsání v odvozené třídě vrátí hodnotu, která označuje, zda se tato instance rovná zadanému objektu.

(Zděděno od Attribute)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

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

Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání.

(Zděděno od Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Načte informace o typu objektu, které lze použít k získání informací o typu pro rozhraní.

(Zděděno od Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1).

(Zděděno od Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Poskytuje přístup k vlastnostem a metodám vystaveným objektem.

(Zděděno od Attribute)

Platí pro