AmbientValueAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Especifica o valor a ser passado para uma propriedade para fazer com que a propriedade obtenha seu valor de outra fonte. Isso é conhecido como ambiente. Essa classe não pode ser herdada.
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
- Herança
- Atributos
Exemplos
O exemplo de código a seguir demonstra o uso AmbientValueAttribute para impor o comportamento ambiente para uma propriedade chamada AlertForeColor. Para obter uma listagem de código completa, consulte Como aplicar atributos em controles do Windows Forms.
[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
Comentários
Se uma propriedade em um controle tiver um comportamento ambiente, esse atributo deverá estar presente. As propriedades de ambiente consultam seu pai quanto ao seu valor, por exemplo, uma Control.Font propriedade ou uma Control.BackColor propriedade.
Normalmente, um designer visual usa o AmbientValueAttribute atributo para decidir qual valor persistir para uma propriedade. Geralmente, esse é um valor que faz com que a propriedade obtenha seu valor de outra fonte. Um exemplo de um valor ambiente é Color.Empty como o valor ambiente da BackColor propriedade. Se você tiver um controle em um formulário e a BackColor propriedade do controle for definida como uma cor BackColor diferente da propriedade do formulário, você poderá redefinir a BackColor propriedade do controle para a do formulário definindo o BackColor controle como Color.Empty.
Construtores
| Nome | Description |
|---|---|
| AmbientValueAttribute(Boolean) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um valor booliano para seu valor. |
| AmbientValueAttribute(Byte) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um inteiro sem sinal de 8 bits para seu valor. |
| AmbientValueAttribute(Char) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um caractere Unicode para seu valor. |
| AmbientValueAttribute(Double) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um número de ponto flutuante de precisão dupla para seu valor. |
| AmbientValueAttribute(Int16) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um inteiro com sinal de 16 bits para seu valor. |
| AmbientValueAttribute(Int32) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um inteiro com sinal de 32 bits para seu valor. |
| AmbientValueAttribute(Int64) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um inteiro com sinal de 64 bits para seu valor. |
| AmbientValueAttribute(Object) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um objeto para seu valor. |
| AmbientValueAttribute(Single) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando um número de ponto flutuante de precisão única para seu valor. |
| AmbientValueAttribute(String) |
Inicializa uma nova instância da AmbientValueAttribute classe, dada uma cadeia de caracteres para seu valor. |
| AmbientValueAttribute(Type, String) |
Inicializa uma nova instância da AmbientValueAttribute classe, considerando o valor e seu tipo. |
Propriedades
| Nome | Description |
|---|---|
| TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para esse Attribute. (Herdado de Attribute) |
| Value |
Obtém o objeto que é o valor deste AmbientValueAttribute. |
Métodos
| Nome | Description |
|---|---|
| Equals(Object) |
Determina se o especificado AmbientValueAttribute é igual ao atual AmbientValueAttribute. |
| GetHashCode() |
Retorna o código hash dessa instância. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsDefaultAttribute() |
Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
| Match(Object) |
Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
| Nome | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações de tipo de um objeto, que podem ser usadas para obter as informações de tipo de uma interface. (Herdado de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |