DependencyObject DependencyObject DependencyObject DependencyObject Class

Definizione

Rappresenta un oggetto che fa parte del sistema di proprietà di dipendenza.Represents an object that participates in the dependency property system.

public ref class DependencyObject : System::Windows::Threading::DispatcherObject
[System.Windows.Markup.NameScopeProperty("NameScope", typeof(System.Windows.NameScope))]
public class DependencyObject : System.Windows.Threading.DispatcherObject
type DependencyObject = class
    inherit DispatcherObject
Public Class DependencyObject
Inherits DispatcherObject
Ereditarietà
DependencyObjectDependencyObjectDependencyObjectDependencyObject
Derivato
Attributi

Esempi

Nell'esempio seguente deriva da DependencyObject per creare una nuova classe astratta.The following example derives from DependencyObject to create a new abstract class. La classe registra quindi una proprietà associata e include i membri di supporto per la proprietà associata.The class then registers an attached property and includes support members for that attached property.

public abstract class AquariumObject3 : DependencyObject
{
    public enum Bouyancy
    {
        Floats,
        Sinks,
        Drifts
    }
    public static readonly DependencyProperty BouyancyProperty = DependencyProperty.RegisterAttached(
      "Bouyancy",
      typeof(Bouyancy),
      typeof(AquariumObject3),
      new FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange),
      new ValidateValueCallback(ValidateBouyancy)
    );
    public static void SetBouyancy(UIElement element, Bouyancy value)
    {
        element.SetValue(BouyancyProperty, value);
    }
    public static Bouyancy GetBouyancy(UIElement element)
    {
        return (Bouyancy)element.GetValue(BouyancyProperty);
    }
    private static bool ValidateBouyancy(object value)
    {
        Bouyancy bTest = (Bouyancy) value;
        return (bTest == Bouyancy.Floats || bTest == Bouyancy.Drifts || bTest==Bouyancy.Sinks);
    }
    public static readonly DependencyProperty IsDirtyProperty = DependencyProperty.Register(
      "IsDirty",
      typeof(Boolean),
      typeof(AquariumObject3)
    );
}
Public MustInherit Class AquariumObject3
    Inherits DependencyObject
    Public Enum Bouyancy
        Floats
        Sinks
        Drifts
    End Enum
    Public Shared ReadOnly BouyancyProperty As DependencyProperty = DependencyProperty.RegisterAttached("Bouyancy", GetType(Bouyancy), GetType(AquariumObject3), New FrameworkPropertyMetadata(Bouyancy.Floats, FrameworkPropertyMetadataOptions.AffectsArrange), New ValidateValueCallback(AddressOf ValidateBouyancy))
    Public Shared Sub SetBouyancy(ByVal element As UIElement, ByVal value As Bouyancy)
        element.SetValue(BouyancyProperty, value)
    End Sub
    Public Shared Function GetBouyancy(ByVal element As UIElement) As Bouyancy
        Return CType(element.GetValue(BouyancyProperty), Bouyancy)
    End Function
    Private Shared Function ValidateBouyancy(ByVal value As Object) As Boolean
        Dim bTest As Bouyancy = CType(value, Bouyancy)
        Return (bTest = Bouyancy.Floats OrElse bTest = Bouyancy.Drifts OrElse bTest = Bouyancy.Sinks)
    End Function
    Public Shared ReadOnly IsDirtyProperty As DependencyProperty = DependencyProperty.Register("IsDirty", GetType(Boolean), GetType(AquariumObject3))
End Class

Commenti

La DependencyObject classe Abilita Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) i servizi del sistema di proprietà sulle numerose classi derivate.The DependencyObject class enables Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) property system services on its many derived classes.

La funzione primaria del sistema di proprietà è di calcolare i valori delle proprietà e di fornire notifiche di sistema sui valori modificati.The property system's primary function is to compute the values of properties, and to provide system notification about values that have changed. Un'altra classe chiave che fa parte del sistema di proprietà DependencyPropertyè.Another key class that participates in the property system is DependencyProperty. DependencyPropertyconsente la registrazione delle proprietà di dipendenza nel sistema di proprietà e fornisce l'identificazione e le informazioni su ogni proprietà di DependencyObject dipendenza, mentre come classe di base consente agli oggetti di utilizzare le proprietà di dipendenza.DependencyProperty enables the registration of dependency properties into the property system, and provides identification and information about each dependency property, whereas DependencyObject as a base class enables objects to use the dependency properties.

DependencyObjecti servizi e le caratteristiche includono quanto segue:DependencyObject services and characteristics include the following:

  • Supporto dell'hosting delle proprietà di dipendenza.Dependency property hosting support. Per registrare una proprietà di dipendenza, chiamare Register il metodo e archiviare il valore restituito del metodo come campo statico pubblico nella classe.You register a dependency property by calling the Register method, and storing the method's return value as a public static field in your class.

  • Supporto per l'hosting di proprietà associate.Attached property hosting support. È possibile registrare una proprietà associata chiamando il RegisterAttached metodo e archiviando il valore restituito del metodo come campo statico pubblico di sola lettura nella classe.You register an attached property by calling the RegisterAttached method, and storing the method's return value as a public static read-only field in your class. (Esistono anche ulteriori requisiti per i membri; si noti che questo WPFWPF rappresenta un'implementazione specifica per le proprietà associate.(There are also additional member requirements; note that this represents a WPFWPF specific implementation for attached properties. Per informazioni dettagliate, vedere Cenni preliminari sulle proprietà associate. La proprietà associata può quindi essere impostata su qualsiasi classe che deriva da DependencyObject.For details, see Attached Properties Overview.) Your attached property can then be set on any class that derives from DependencyObject.

  • Metodi get, set e Clear Utility per i valori di tutte le proprietà di dipendenza presenti in DependencyObject.Get, set, and clear utility methods for values of any dependency properties that exist on the DependencyObject.

  • Metadati, supporto del valore di coercizione, notifica di modifica delle proprietà ed override dei callback per le proprietà di dipendenza o le proprietà associate.Metadata, coerce value support, property changed notification, and override callbacks for dependency properties or attached properties. Inoltre, la DependencyObject classe facilita i metadati della proprietà per proprietario per una proprietà di dipendenza.Also, the DependencyObject class facilitates the per-owner property metadata for a dependency property.

  • Classe base comune per le classi derivate Freezableda ContentElement, Visualo.A common base class for classes derived from ContentElement, Freezable, or Visual. (UIElement, un'altra classe di elementi di base, ha una gerarchia Visualdi classi che include.)(UIElement, another base element class, has a class hierarchy that includes Visual.)

Costruttori

DependencyObject() DependencyObject() DependencyObject() DependencyObject()

Inizializza una nuova istanza della classe DependencyObject.Initializes a new instance of the DependencyObject class.

Proprietà

DependencyObjectType DependencyObjectType DependencyObjectType DependencyObjectType

Ottiene la classe DependencyObjectType che include il tipo CLRCLR di questa istanza.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

Dispatcher Dispatcher Dispatcher Dispatcher

Ottiene l'oggetto Dispatcher associato a DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
IsSealed IsSealed IsSealed IsSealed

Ottiene un valore che indica se l'istanza è attualmente sealed (di sola lettura).Gets a value that indicates whether this instance is currently sealed (read-only).

Metodi

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

Determina se il thread chiamante ha accesso a DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà.Clears the local value of a property. La proprietà da cancellare è specificata da un identificatore DependencyProperty.The property to be cleared is specified by a DependencyProperty identifier.

ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey)

Cancella il valore locale di una proprietà di sola lettura.Clears the local value of a read-only property. La proprietà da cancellare è specificata da un oggetto DependencyPropertyKey.The property to be cleared is specified by a DependencyPropertyKey.

CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty)

Assegna forzatamente il valore della proprietà di dipendenza specificata.Coerces the value of the specified dependency property. Questa operazione viene eseguita richiamando qualsiasi funzione CoerceValueCallback specificata nei metadati della proprietà di dipendenza esistente nell'oggetto DependencyObject chiamante.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto DependencyObject specificato equivale all'oggetto DependencyObject corrente.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Ottiene un codice hash per DependencyObject.Gets a hash code for this DependencyObject.

GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator()

Crea un enumeratore specializzato per determinare le proprietà di dipendenza che presentano valori impostati localmente nell'oggetto DependencyObject.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di DependencyObject.Returns the current effective value of a dependency property on this instance of a DependencyObject.

InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty)

Valuta di nuovo il valore effettivo della proprietà di dipendenza specificata.Re-evaluates the effective value for the specified dependency property

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs)

Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject.Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. La specifica proprietà di dipendenza modificata viene indicata nei dati dell'evento.The specific dependency property that changed is reported in the event data.

ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se esistente.Returns the local value of a dependency property, if it exists.

SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object)

Imposta il valore di una proprietà di dipendenza senza modificare l'origine del valore.Sets the value of a dependency property without changing its value source.

SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza, specificato dal relativo identificatore della proprietà di dipendenza.Sets the local value of a dependency property, specified by its dependency property identifier.

SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object)

Imposta il valore locale di una proprietà di dipendenza di sola lettura, specificato dall'identificatore DependencyPropertyKey della proprietà di dipendenza.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty)

Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della proprietà di dipendenza specificata.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)
VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

Impone che il thread chiamante abbia accesso a DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Si applica a

Vedi anche