Esporta (0) Stampa
Espandi tutto
Il presente articolo è stato tradotto automaticamente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

Metodo DependencyObject.SetValue (DependencyProperty, Object)

Imposta il valore locale di un oggetto proprietà di dipendenza, specificato dal relativo identificatore di proprietà di dipendenza.

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

member SetValue : 
        dp:DependencyProperty * 
        value:Object -> unit 

Parametri

dp
Tipo: System.Windows.DependencyProperty
L'identificatore della proprietà di dipendenza da impostare.
value
Tipo: System.Object
il nuovo valore locale.

EccezioneCondizione
InvalidOperationException

Ha tentato di modificare una proprietà di dipendenza di sola lettura, o una proprietà su una classe sealed DependencyObject.

ArgumentException

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

Se il tipo specificato non corrisponde al tipo che sia dichiarato per la proprietà di dipendenza in quanto originariamente registrata, viene generata un'eccezione. value il parametro deve essere fornito sempre come tipo appropriato.

Gli stati di eccezione potenzialmente vengono influenzati da ValidateValueCallback callback che esiste sull'identificatore di proprietà di dipendenza della proprietà di dipendenza che viene impostata. In caso contrario, il valore fornito potrebbe non riuscire gli stati generali di controllo dei tipi (ad esempio, passando una stringa quando il tipo nativo è double).

In questo esempio viene mostrato come supportare una proprietà Common Language Runtime (CLR) con un campo DependencyProperty, definendo una proprietà di dipendenza. Quando si definiscono proprietà personalizzate e si desidera che queste supportino numerosi aspetti della funzionalità Windows Presentation Foundation (WPF), inclusi stili, associazione dati, ereditarietà, animazione e valori predefiniti, è necessario implementarle come proprietà di dipendenza.

Nell'esempio seguente viene innanzitutto registrata una proprietà di dipendenza chiamando il metodo Register. Il nome del campo dell'identificatore utilizzato per memorizzare il nome e le caratteristiche della proprietà di dipendenza deve essere l'oggetto Name scelto per la proprietà di dipendenza come parte della chiamata Register, aggiunta dalla stringa letterale Property. Ad esempio, se si registra una proprietà di dipendenza con una proprietà Name di Location, il campo dell'identificatore definito per la proprietà di dipendenza deve essere denominato LocationProperty.

In questo esempio, il nome della proprietà di dipendenza e la relativa funzione di accesso CLR è State; il campo dell'identificatore è StateProperty; il tipo della proprietà è Boolean e il tipo che registra la proprietà di dipendenza è MyStateControl.

Se non si riesce a seguire questo modello di denominazione, la proprietà potrebbe non essere segnalata correttamente nelle finestre di progettazione e alcuni aspetti dell'applicazione di stili del sistema di proprietà potrebbero non funzionare nel modo previsto.

Inoltre, è possibile specificare i metadati predefiniti per una proprietà di dipendenza. In questo esempio viene registrato il valore predefinito della State proprietà di dipendenza affinché sia false.

Non sono attualmente disponibili esempi di codice o questo linguaggio potrebbe non essere supportato.

Per ulteriori informazioni sulla modalità e sui motivi dell'implementazione di una proprietà di dipendenza, in contrapposizione al semplice supporto di una proprietà CLR con un campo privato, vedere Cenni preliminari sulle proprietà di dipendenza.

.NET Framework

Supportato in: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Supportato in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (ruoli di base del server non supportati), Windows Server 2008 R2 (ruoli di base del server supportati con SP1 o versione successiva, Itanium non supportato)

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

Aggiunte alla community

AGGIUNGI
Mostra:
© 2014 Microsoft