AmbientValueAttribute Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Especifica o valor a transferir para uma propriedade para que esta obtenha o seu valor de outra fonte. Isto é conhecido como ambiente. Esta 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 seguinte demonstra a utilização AmbientValueAttribute para impor comportamento ambiente numa propriedade chamada AlertForeColor. Para uma listagem completa do código, veja Como: Aplicar Atributos em Controlos 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
Observações
Se uma propriedade num controlo tiver comportamento ambiente, esse atributo deve estar presente. As propriedades ambientais questionam o valor do pai, por exemplo, uma Control.Font propriedade ou uma Control.BackColor propriedade.
Normalmente, um designer visual usa o AmbientValueAttribute atributo para decidir qual o valor a manter para uma propriedade. Este é geralmente um valor que faz com que a propriedade obtenha o seu valor de outra fonte. Um exemplo de valor ambiente é Color.Empty como valor ambiente da BackColor propriedade. Se tiver um controlo num formulário e a BackColor propriedade do controlo estiver definida para uma cor diferente da BackColor propriedade do formulário, pode redefinir a BackColor propriedade do controlo para a do formulário definindo o BackColor do controlo para Color.Empty.
Construtores
| Name | Description |
|---|---|
| AmbientValueAttribute(Boolean) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um valor booleano para o seu valor. |
| AmbientValueAttribute(Byte) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um inteiro sem sinal de 8 bits para o seu valor. |
| AmbientValueAttribute(Char) |
Inicializa uma nova instância da AmbientValueAttribute classe, com um carácter Unicode como valor. |
| AmbientValueAttribute(Double) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um número de ponto flutuante de dupla precisão para o seu valor. |
| AmbientValueAttribute(Int16) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um inteiro assinado de 16 bits para o seu valor. |
| AmbientValueAttribute(Int32) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um inteiro com sinal de 32 bits para o seu valor. |
| AmbientValueAttribute(Int64) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um inteiro assinado de 64 bits para o seu valor. |
| AmbientValueAttribute(Object) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um objeto para o seu valor. |
| AmbientValueAttribute(Single) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado um número de ponto flutuante de precisão simples para o seu valor. |
| AmbientValueAttribute(String) |
Inicializa uma nova instância da AmbientValueAttribute classe, dada uma string como valor. |
| AmbientValueAttribute(Type, String) |
Inicializa uma nova instância da AmbientValueAttribute classe, dado o valor e o seu tipo. |
Propriedades
| Name | Description |
|---|---|
| TypeId |
Quando implementado numa classe derivada, obtém um identificador único para esta Attribute. (Herdado de Attribute) |
| Value |
Obtém o objeto que é o valor deste AmbientValueAttribute. |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Determina se o especificado AmbientValueAttribute é igual à corrente AmbientValueAttribute. |
| GetHashCode() |
Devolve o código de hash para esta instância. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsDefaultAttribute() |
Quando sobrescrito numa classe derivada, indica se o valor desta instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
| Match(Object) |
Quando sobrescrito numa classe derivada, devolve um valor que indica se esta instância é igual a um objeto especificado. (Herdado de Attribute) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
Implementações de Interface Explícita
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de despacho. (Herdado de Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera a informação de tipo de um objeto, que pode ser usada para obter a informação de tipo para uma interface. (Herdado de Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Recupera o número de interfaces de informações de tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Proporciona acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |