AmbientValueAttribute Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Specifica il valore per passare a una proprietà che determini il proprio valore da un'altra origine. Questo concetto è noto come ambiente. La classe non può essere ereditata.
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
- Ereditarietà
- Attributi
Esempio
Nell'esempio di codice seguente viene illustrato l'uso AmbientValueAttribute di per applicare il comportamento di ambiente per una proprietà denominata AlertForeColor
. Per un elenco di codice completo, vedere Procedura: Applicare attributi nei controlli 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
Commenti
Se una proprietà in un controllo ha un comportamento di ambiente, questo attributo deve essere presente. Le proprietà di ambiente eseguono query sul relativo valore padre, ad esempio una Control.Font proprietà o una Control.BackColor proprietà.
In genere, una finestra di progettazione visiva usa l'attributo AmbientValueAttribute per decidere quale valore rendere persistente per una proprietà. Si tratta in genere di un valore che fa sì che la proprietà ottiene il relativo valore da un'altra origine. Un esempio di valore di ambiente è Color.Empty il valore di ambiente per la BackColor proprietà . Se si dispone di un controllo in una maschera e la BackColor proprietà del controllo è impostata su un colore diverso rispetto BackColor alla proprietà della maschera, è possibile reimpostare la BackColor proprietà del controllo su quella della maschera impostando l'oggetto BackColor del controllo su Color.Empty.
Costruttori
AmbientValueAttribute(Boolean) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato un valore Boolean come relativo valore. |
AmbientValueAttribute(Byte) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato un intero senza segno a 8 bit come relativo valore. |
AmbientValueAttribute(Char) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato un carattere Unicode come relativo valore. |
AmbientValueAttribute(Double) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato un numero in virgola mobile e precisione doppia come relativo valore. |
AmbientValueAttribute(Int16) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato un intero con segno a 16 bit come relativo valore. |
AmbientValueAttribute(Int32) |
Inizializza una nuova istanza della classe AmbientValueAttribute, dato un intero con segno a 32 bit come relativo valore. |
AmbientValueAttribute(Int64) |
Inizializza una nuova istanza della classe AmbientValueAttribute, dato un intero con segno a 64 bit come relativo valore. |
AmbientValueAttribute(Object) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato un oggetto come relativo valore. |
AmbientValueAttribute(Single) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato un numero in virgola mobile e precisione singola come relativo valore. |
AmbientValueAttribute(String) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, data una stringa come relativo valore. |
AmbientValueAttribute(Type, String) |
Consente di inizializzare una nuova istanza della classe AmbientValueAttribute, dato il valore e il relativo tipo. |
Proprietà
TypeId |
Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute. (Ereditato da Attribute) |
Value |
Ottiene l'oggetto che corrisponde al valore di AmbientValueAttribute. |
Metodi
Equals(Object) |
Determina se l'oggetto AmbientValueAttribute specificato è uguale all'oggetto AmbientValueAttribute corrente. |
GetHashCode() |
Restituisce il codice hash per l'istanza. |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
IsDefaultAttribute() |
In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) |
Match(Object) |
Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. (Ereditato da Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia. (Ereditato da Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1). (Ereditato da Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute) |