Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese
Questa documentazione è stata archiviata e non viene gestita.

Metodo DependencyObject.SetValue (DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza, specificata dal relativo identificatore.

Spazio dei nomi:  System.Windows
Assembly:  WindowsBase (in WindowsBase.dll)

public void SetValue(
	DependencyProperty dp,
	Object value
)

Parametri

dp
Tipo: System.Windows.DependencyProperty
Identificatore della proprietà di dipendenza da impostare.
value
Tipo: System.Object
Nuovo valore locale.

EccezioneCondizione
InvalidOperationException

È stato effettuato un tentativo di modificare una proprietà di dipendenza di sola lettura o una proprietà in un oggetto DependencyObject sealed.

ArgumentException

value non è il tipo corretto registrato per la proprietà dp.

Se il tipo specificato non corrisponde al tipo dichiarato per la proprietà di dipendenza registrata in origine, viene generata un'eccezione. È necessario specificare sempre il parametro value come tipo appropriato.

Le condizioni dell'eccezione sono potenzialmente influenzate dal callback ValidateValueCallback esistente nell'identificatore della proprietà di dipendenza impostata. In caso contrario il valore fornito potrebbe non essere all'altezza delle condizioni generali di controllo del tipo (ad esempio passare una stringa quando il tipo nativo è Double).

This example shows how to back a common language runtime (CLR) property with a DependencyProperty field, thus defining a dependency property. When you define your own properties and want them to support many aspects of Windows Presentation Foundation (WPF) functionality, including styles, data binding, inheritance, animation, and default values, you should implement them as a dependency property.

The following example first registers a dependency property by calling the Register method. The name of the identifier field that you use to store the name and characteristics of the dependency property must be the Name you chose for the dependency property as part of the Register call, appended by the literal string Property. For instance, if you register a dependency property with a Name of Location, then the identifier field that you define for the dependency property must be named LocationProperty.

In this example, the name of the dependency property and its CLR accessor is State; the identifier field is StateProperty; the type of the property is Boolean; and the type that registers the dependency property is MyStateControl.

If you fail to follow this naming pattern, designers might not report your property correctly, and certain aspects of property system style application might not behave as expected.

You can also specify default metadata for a dependency property. This example registers the default value of the State dependency property to be false.


public class MyStateControl : ButtonBase
{
  public MyStateControl() : base() { }
  public Boolean State
  {
    get { return (Boolean)this.GetValue(StateProperty); }
    set { this.SetValue(StateProperty, value); } 
  }
  public static readonly DependencyProperty StateProperty = DependencyProperty.Register(
    "State", typeof(Boolean), typeof(MyStateControl),new PropertyMetadata(false));
}


For more information about how and why to implement a dependency property, as opposed to just backing a CLR property with a private field, see Dependency Properties Overview.

.NET Framework

Supportato in: 4, 3.5, 3.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 o versione successiva, Windows XP SP3, Windows Server 2008 (componenti di base del server non supportati), Windows Server 2008 R2 (componenti di base del server supportati con SP1 o versione successiva), Windows Server 2003 SP2

.NET Framework non supporta tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Mostra: