DependencyProperty DependencyProperty DependencyProperty DependencyProperty Class

Definition

Rappresenta una proprietà che può essere impostata tramite metodi, ad esempio stile, data binding, animazione ed ereditarietà. Represents a property that can be set through methods such as, styling, data binding, animation, and inheritance.

public ref class DependencyProperty sealed
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
[System.ComponentModel.TypeConverter("System.Windows.Markup.DependencyPropertyConverter, PresentationFramework, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null")]
public sealed class DependencyProperty
type DependencyProperty = class
Public NotInheritable Class DependencyProperty
Inheritance
DependencyPropertyDependencyPropertyDependencyPropertyDependencyProperty
Attributes

Remarks

Oggetto DependencyProperty supporta le funzionalità seguenti in Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF):A DependencyProperty supports the following capabilities in Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF):

  • La proprietà può essere impostata in uno stile.The property can be set in a style. Per altre informazioni, vedere Applicazione di stili e modelli.For more information, see Styling and Templating.

  • La proprietà può essere impostata tramite l'associazione dati.The property can be set through data binding. Per altre informazioni sulle proprietà di dipendenza di data binding, vedere procedura: associare la proprietà di due controlli.For more information about data binding dependency properties, see How to: Bind the Properties of Two Controls.

  • La proprietà può essere impostata con un riferimento di risorsa dinamica.The property can be set with a dynamic resource reference. Per altre informazioni, vedere Risorse XAML.For more information, see XAML Resources.

  • La proprietà può ereditare automaticamente il valore da un elemento padre nell'albero degli elementi.The property can inherit its value automatically from a parent element in the element tree. Per altre informazioni, vedere Ereditarietà del valore della proprietà.For more information, see Property Value Inheritance.

  • È possibile animare la proprietà.The property can be animated. Per altre informazioni, vedere Panoramica dell'animazione.For more information, see Animation Overview.

  • La proprietà può segnalare se il valore precedente della proprietà è stato modificato e può essere assegnato il valore della proprietà.The property can report when the previous value of the property has been changed and the property value can be coerced. Per altre informazioni, vedere Callback e convalida delle proprietà di dipendenza.For more information, see Dependency Property Callbacks and Validation.

  • La proprietà segnala informazioni da WPFWPF, ad esempio se la modifica di un valore della proprietà richiede il sistema di layout ricomponga gli elementi visivi per un elemento.The property reports information to WPFWPF, such as whether changing a property value should require the layout system to recompose the visuals for an element.

  • La proprietà riceve supporto nel WPF Designer per Visual StudioWPF Designer for Visual Studio.The property receives support in the WPF Designer per Visual StudioWPF Designer for Visual Studio. Ad esempio, la proprietà può essere modificata nel proprietà finestra.For example, the property can be edited in the Properties window.

Per altre informazioni sulle proprietà di dipendenza, vedere Cenni preliminari sulle proprietà di dipendenza.To learn more about dependency properties, see Dependency Properties Overview. Se si desidera che le proprietà sui tipi personalizzati per supportare le funzionalità nell'elenco precedente, è necessario creare una proprietà di dipendenza.If you want properties on your custom types to support the capabilities in the preceding list, you should create a dependency property. Per informazioni su come creare proprietà di dipendenza personalizzate, vedere proprietà di dipendenza personalizzate.To learn how to create custom dependency properties, see Custom Dependency Properties.

Una proprietà associata è una proprietà che consente a qualsiasi oggetto di informazioni sul report per il tipo che definisce la proprietà associata.An attached property is a property that enables any object to report information to the type that defines the attached property. Nelle WPFWPF, qualsiasi tipo che eredita da DependencyObject può usare una proprietà associata indipendentemente dal fatto che il tipo eredita dal tipo che definisce la proprietà.In WPFWPF, any type that inherits from DependencyObject can use an attached property regardless of whether the type inherits from the type that defines the property. Una proprietà associata è una funzionalità del XAMLXAML language.An attached property is a feature of the XAMLXAML language. Per impostare una proprietà associata XAMLXAML, usare il TipoProprietario.* propertyName* sintassi.To set an attached property in XAMLXAML, use the ownerType.propertyName syntax. Un esempio di una proprietà associata è di DockPanel.Dock proprietà.An example of an attached property is the DockPanel.Dock property. Se si desidera creare una proprietà che può essere utilizzata in tutti i DependencyObject tipi, è necessario creare una proprietà associata.If you want to create a property that can be used on all DependencyObject types, then you should create an attached property. Per altre informazioni sulle proprietà associate, tra cui come crearli, vedere Cenni preliminari sulle proprietà associate.To learn more about attached properties, including how to create them, see Attached Properties Overview.

Uso della sintassi XAML per gli attributiXAML Attribute Usage

<object property="dependencyPropertyName"/>  
- or -  
<object property="ownerType.dependencyPropertyName"/>  
- or -  
<object property="attachedPropertyOwnerType.attachedPropertyName"/>  

Valori XAMLXAML Values

dependencyPropertyName
Stringa che specifica il DependencyProperty.Name della proprietà di dipendenza desiderato.A string that specifies the DependencyProperty.Name of the desired dependency property. Questo può essere preceduto dal prefisso dello spazio dei nomi XML, se la proprietà non è incluso nello spazio dei nomi XML predefinito (per informazioni dettagliate, vedere spazi dei nomi XAML e Mapping di Namespace per XAML WPF.)This can be preceded by an XML namespace prefix if the property is not in the default XML namespace (for details, see XAML Namespaces and Namespace Mapping for WPF XAML.)

ownerType.dependencyPropertyNameownerType.dependencyPropertyName
Stringa che specifica un tipo di proprietario di una proprietà di dipendenza, un punto (.), quindi il DependencyProperty.Name.A string that specifies an owner type of a dependency property, a dot (.), then the DependencyProperty.Name. ownerType possono anche essere preceduti dal prefisso dello spazio dei nomi XML.ownerType can also be preceded by an XML namespace prefix. Questo utilizzo è specifico di associazione tardiva stili e modelli, in cui il proprietario della proprietà di dipendenza deve essere specificato per l'analisi del contesto perché il TargetType non è ancora noto.This usage is particular to late-bound styles and templates, where the owner of the dependency property must be specified for parsing context because the TargetType is not yet known. Per altre informazioni, vedere Applicazione di stili e modelli.For more information, see Styling and Templating.

attachedPropertyOwnerType .attachedPropertyOwnerType . attachedPropertyName
Stringa che specifica il proprietario di una proprietà associata, un punto (.), quindi il nome della proprietà associata.A string that specifies the owner of an attached property, a dot (.), then the attached property name. attachedPropertyOwnerType possono anche essere preceduti dal prefisso dello spazio dei nomi XML.attachedPropertyOwnerType can also be preceded by an XML namespace prefix.

Fields

UnsetValue UnsetValue UnsetValue UnsetValue

Specifica un valore statico utilizzato dal sistema della proprietà WPFWPF piuttosto che null per indicare che la proprietà esiste, ma non ha il valore impostato dal sistema della proprietà. Specifies a static value that is used by the WPFWPF property system rather than null to indicate that the property exists, but does not have its value set by the property system.

Properties

DefaultMetadata DefaultMetadata DefaultMetadata DefaultMetadata

Ottiene i metadati predefiniti della proprietà di dipendenza. Gets the default metadata of the dependency property.

GlobalIndex GlobalIndex GlobalIndex GlobalIndex

Ottiene un valore generato internamente che identifica in modo univoco la proprietà di dipendenza. Gets an internally generated value that uniquely identifies the dependency property.

Name Name Name Name

Ottiene il nome della proprietà di dipendenza. Gets the name of the dependency property.

OwnerType OwnerType OwnerType OwnerType

Ottiene il tipo dell'oggetto che ha registrato la proprietà di dipendenza nel sistema di proprietà o che si è aggiunto come proprietario della proprietà. Gets the type of the object that registered the dependency property with the property system, or added itself as owner of the property.

PropertyType PropertyType PropertyType PropertyType

Ottiene il tipo che la proprietà di dipendenza utilizza per il valore. Gets the type that the dependency property uses for its value.

ReadOnly ReadOnly ReadOnly ReadOnly

Ottiene un valore che indica se la proprietà di dipendenza identificata da questa istanza DependencyProperty è una proprietà di dipendenza di sola lettura. Gets a value that indicates whether the dependency property identified by this DependencyProperty instance is a read-only dependency property.

ValidateValueCallback ValidateValueCallback ValidateValueCallback ValidateValueCallback

Ottiene il callback di convalida del valore per la proprietà di dipendenza. Gets the value validation callback for the dependency property.

Methods

AddOwner(Type) AddOwner(Type) AddOwner(Type) AddOwner(Type)

Aggiunge un altro tipo come proprietario di una proprietà di dipendenza che è già stata registrata. Adds another type as an owner of a dependency property that has already been registered.

AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata) AddOwner(Type, PropertyMetadata)

Aggiunge un altro tipo come proprietario di una proprietà di dipendenza già registrata, fornendo i metadati della proprietà di dipendenza nello stato attuale per il tipo di proprietario specificato. Adds another type as an owner of a dependency property that has already been registered, providing dependency property metadata for the dependency property as it will exist on the provided owner type.

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

Determina se l'oggetto specificato è uguale all'oggetto corrente. Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Restituisce un codice hash per DependencyProperty. Returns a hash code for this DependencyProperty.

GetMetadata(DependencyObject) GetMetadata(DependencyObject) GetMetadata(DependencyObject) GetMetadata(DependencyObject)

Restituisce i metadati per questa proprietà di dipendenza nello stato attuale per l'istanza dell'oggetto specificato. Returns the metadata for this dependency property as it exists on the specified object instance.

GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType) GetMetadata(DependencyObjectType)

Restituisce i metadati per questa proprietà di dipendenza nello stato attuale per un tipo specificato. Returns the metadata for this dependency property as it exists on a specified type.

GetMetadata(Type) GetMetadata(Type) GetMetadata(Type) GetMetadata(Type)

Restituisce i metadati per questa proprietà di dipendenza nello stato attuale per un tipo esistente specificato. Returns the metadata for this dependency property as it exists on a specified existing type.

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

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

(Inherited from Object)
IsValidType(Object) IsValidType(Object) IsValidType(Object) IsValidType(Object)

Determina se un valore specificato è accettabile per questo tipo di proprietà di dipendenza, come controllato per il tipo di proprietà fornito nella registrazione originale della proprietà di dipendenza. Determines whether a specified value is acceptable for this dependency property's type, as checked against the property type provided in the original dependency property registration.

IsValidValue(Object) IsValidValue(Object) IsValidValue(Object) IsValidValue(Object)

Determina se il valore fornito è accettato per il tipo di proprietà tramite il controllo del tipo di base e anche, potenzialmente, se è all'interno dell'intervallo consentito dei valori per quel tipo. Determines whether the provided value is accepted for the type of property through basic type checking, and also potentially if it is within the allowed range of values for that type.

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

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

(Inherited from Object)
OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata) OverrideMetadata(Type, PropertyMetadata)

Specifica i metadati alternativi per questa proprietà di dipendenza quando è presente nelle istanze di un tipo specificato, eseguendo l'override dei metadati esistenti per la proprietà di dipendenza quando è stata ereditata dai tipi di base. Specifies alternate metadata for this dependency property when it is present on instances of a specified type, overriding the metadata that existed for the dependency property as it was inherited from base types.

OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey) OverrideMetadata(Type, PropertyMetadata, DependencyPropertyKey)

Specifica i metadati alternativi per una proprietà di dipendenza di sola lettura quando è presente nelle istanze di un tipo specificato, in sostituzione dei metadati specificati nella registrazione della proprietà di dipendenza iniziale. Supplies alternate metadata for a read-only dependency property when it is present on instances of a specified type, overriding the metadata that was provided in the initial dependency property registration. È necessario passare DependencyPropertyKey affinché la proprietà di dipendenza di sola lettura eviti di generare un'eccezione. You must pass the DependencyPropertyKey for the read-only dependency property to avoid raising an exception.

Register(String, Type, Type) Register(String, Type, Type) Register(String, Type, Type) Register(String, Type, Type)

Registra una proprietà di dipendenza con il nome di proprietà, il tipo di proprietà e il tipo di proprietario specificati. Registers a dependency property with the specified property name, property type, and owner type.

Register(String, Type, Type, PropertyMetadata) Register(String, Type, Type, PropertyMetadata) Register(String, Type, Type, PropertyMetadata) Register(String, Type, Type, PropertyMetadata)

Registra una proprietà di dipendenza con il nome, il tipo e i metadati della proprietà e il tipo di proprietario specificati. Registers a dependency property with the specified property name, property type, owner type, and property metadata.

Register(String, Type, Type, PropertyMetadata, ValidateValueCallback) Register(String, Type, Type, PropertyMetadata, ValidateValueCallback) Register(String, Type, Type, PropertyMetadata, ValidateValueCallback) Register(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra una proprietà di dipendenza con il nome di proprietà, il tipo di proprietà, il tipo di proprietario, i metadati della proprietà e un callback di convalida del valore della proprietà specificati. Registers a dependency property with the specified property name, property type, owner type, property metadata, and a value validation callback for the property.

RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type) RegisterAttached(String, Type, Type)

Registra una proprietà associata con il nome di proprietà, il tipo di proprietà e il tipo di proprietario specificati. Registers an attached property with the specified property name, property type, and owner type.

RegisterAttached(String, Type, Type, PropertyMetadata) RegisterAttached(String, Type, Type, PropertyMetadata) RegisterAttached(String, Type, Type, PropertyMetadata) RegisterAttached(String, Type, Type, PropertyMetadata)

Registra una proprietà associata al nome, al tipo e ai metadati della proprietà e al tipo di proprietario specificati. Registers an attached property with the specified property name, property type, owner type, and property metadata.

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra una proprietà associata con il tipo della proprietà, il tipo del proprietario, i metadati della proprietà e un callback di convalida del valore per la proprietà specificati. Registers an attached property with the specified property type, owner type, property metadata, and value validation callback for the property.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata)

Registra una proprietà associata di sola lettura con il tipo e i metadati della proprietà e il tipo di proprietario specificati. Registers a read-only attached property, with the specified property type, owner type, and property metadata.

RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterAttachedReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra una proprietà associata di sola lettura, con il tipo della proprietà, il tipo del proprietario, i metadati della proprietà e un callback di convalida specificati. Registers a read-only attached property, with the specified property type, owner type, property metadata, and a validation callback.

RegisterReadOnly(String, Type, Type, PropertyMetadata) RegisterReadOnly(String, Type, Type, PropertyMetadata) RegisterReadOnly(String, Type, Type, PropertyMetadata) RegisterReadOnly(String, Type, Type, PropertyMetadata)

Registra una proprietà di dipendenza di sola lettura con il tipo e i metadati della proprietà e il tipo di proprietario specificati. Registers a read-only dependency property, with the specified property type, owner type, and property metadata.

RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback) RegisterReadOnly(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Registra una proprietà di dipendenza di sola lettura, con il tipo di proprietà, il tipo di proprietario, i metadati della proprietà e un callback di convalida specificati. Registers a read-only dependency property, with the specified property type, owner type, property metadata, and a validation callback.

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

Restituisce la rappresentazione di stringa della proprietà di dipendenza. Returns the string representation of the dependency property.

Applies to

See Also