AmbientValueAttribute Clase

Definición

Especifica el valor para pasar a una propiedad que hace que esta obtenga su valor de otro origen. Esto se conoce como ambiente. Esta clase no puede heredarse.

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
Herencia
AmbientValueAttribute
Atributos

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar AmbientValueAttribute para aplicar el comportamiento ambiental de una propiedad denominada AlertForeColor. Para obtener una lista de código completa, vea 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
    {
        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

Comentarios

Si una propiedad de un control tiene un comportamiento ambiente, este atributo debe estar presente. Las propiedades ambientales consultan a su elemento primario su valor, por ejemplo, una Control.Font propiedad o una Control.BackColor propiedad .

Normalmente, un diseñador visual usa el AmbientValueAttribute atributo para decidir qué valor conservar para una propiedad. Suele ser un valor que hace que la propiedad obtenga su valor de otro origen. Un ejemplo de un valor ambiente es Color.Empty como el valor ambiente de la BackColor propiedad . Si tiene un control en un formulario y la BackColor propiedad del control se establece en un color diferente al de la BackColor propiedad del formulario, puede restablecer la BackColor propiedad del control a la del formulario estableciendo el BackColor del control Color.Emptyen .

Constructores

AmbientValueAttribute(Boolean)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un valor booleano como valor.

AmbientValueAttribute(Byte)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un entero de 8 bits sin signo como valor.

AmbientValueAttribute(Char)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un carácter Unicode como valor.

AmbientValueAttribute(Double)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un número de punto flotante de precisión doble como valor.

AmbientValueAttribute(Int16)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un entero de 16 bits con signo como valor.

AmbientValueAttribute(Int32)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un entero de 32 bits con signo como valor.

AmbientValueAttribute(Int64)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un entero de 64 bits con signo como valor.

AmbientValueAttribute(Object)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un objeto como valor.

AmbientValueAttribute(Single)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dado un número de punto flotante de precisión sencilla como valor.

AmbientValueAttribute(String)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dada una cadena como valor.

AmbientValueAttribute(Type, String)

Inicializa una nueva instancia de la clase AmbientValueAttribute, dados el valor y su tipo.

Propiedades

TypeId

Cuando se implementa en una clase derivada, obtiene un identificador único para este Attribute.

(Heredado de Attribute)
Value

Obtiene el objeto que es el valor de AmbientValueAttribute.

Métodos

Equals(Object)

Determina si el objeto AmbientValueAttribute especificado es igual al objeto AmbientValueAttribute actual.

GetHashCode()

Devuelve el código hash de esta instancia.

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
IsDefaultAttribute()

Si se reemplaza en una clase derivada, indica si el valor de esta instancia es el valor predeterminado de la clase derivada.

(Heredado de Attribute)
Match(Object)

Cuando se invalida en una clase derivada, devuelve un valor que indica si esta instancia es igual a un objeto especificado.

(Heredado de Attribute)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

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

Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío.

(Heredado de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Obtiene la información de tipos de un objeto, que puede utilizarse para obtener la información de tipos de una interfaz.

(Heredado de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1).

(Heredado de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Proporciona acceso a las propiedades y los métodos expuestos por un objeto.

(Heredado de Attribute)

Se aplica a