Attributo x:Sharedx:Shared Attribute

Se impostato su false, modificare il comportamento di recupero delle risorse WPF, in modo che le richieste per la risorsa con attributa creare una nuova istanza per ogni richiesta invece di condividere la stessa istanza per tutte le richieste.When set to false, modifies WPF resource-retrieval behavior so that requests for the attributed resource create a new instance for each request instead of sharing the same instance for all requests.

Uso della sintassi XAML per gli attributiXAML Attribute Usage

<ResourceDictionary>  
  <object x:Shared="false".../>  
</ResourceDictionary>  

NoteRemarks

x:Shared viene eseguito il mapping a nomi XAML del linguaggio XAML e viene riconosciuto come un elemento di linguaggio XAML valido dai servizi XAML di .NET Framework e i reader XAML.x:Shared is mapped to the XAML language XAML namespace and is recognized as a valid XAML language element by .NET Framework XAML Services and its XAML readers. Tuttavia, le funzionalità dichiarate di x:Shared rilevanti solo per le applicazioni WPF e per il parser XAML di WPF.However, the stated capabilities of x:Shared are only relevant for WPF applications and for the WPF XAML parser. In WPF, x:Shared è utile come un attributo solo quando viene applicato a un oggetto che esiste all'interno di un controllo WPF ResourceDictionary.In WPF, x:Shared is only useful as an attribute when it is applied to an object that exists within a WPF ResourceDictionary. Altri utilizzi generano eccezioni di analisi o altri errori, ma non hanno alcun effetto.Other usages do not throw parse exceptions or other errors, but they have no effect.

Il significato di x:Shared non è specificato nella specifica del linguaggio XAML.The meaning of x:Shared is not specified in the XAML language specification. Altre implementazioni di XAML, ad esempio quelli basati sui servizi XAML di .NET Framework, non necessariamente supportano la condivisione delle risorse.Other XAML implementations, such as those that build on .NET Framework XAML Services, do not necessarily provide resource-sharing support. Tali implementazioni XAML può fornire un comportamento simile nel framework di supporto usato anche x:Shared valori.Such XAML implementations could provide similar behavior in the supporting framework that also used x:Shared values.

In WPF, il valore predefinito x:Shared condizione per le risorse è true.In WPF, the default x:Shared condition for resources is true. Questa condizione indica che qualsiasi richiesta di risorsa specificata restituisce sempre la stessa istanza.This condition means that any given resource request always returns the same instance.

Modifica di un oggetto che viene restituito tramite una risorsa API, ad esempio FindResource, o la modifica di un oggetto direttamente all'interno di un ResourceDictionary, modifica la risorsa originale.Modifying an object that is returned through a resource API, such as FindResource, or modifying an object directly within a ResourceDictionary, changes the original resource. Se i riferimenti a tale risorsa erano riferimenti a risorse dinamiche, gli utenti di tale risorsa otterranno la risorsa modificata.If references to that resource were dynamic resource references, the consumers of that resource get the changed resource.

Se i riferimenti alla risorsa erano riferimenti alle risorse statiche, modifiche alla risorsa dopo XAMLXAML tempo di elaborazione sono irrilevanti.If references to the resource were static resource references, changes to the resource after XAMLXAML processing time are irrelevant. Per ulteriori informazioni statiche e i riferimenti alle risorse dinamiche, vedere risorse XAML.For more information about static versus dynamic resource references, see XAML Resources.

Specificare in modo esplicito x:Shared="true" viene utilizzata raramente, perché è già il valore predefinito.Explicitly specifying x:Shared="true" is rarely done, because that is already the default. Non è presente codice diretto equivalente per x:Shared modello a oggetti in WPF, ma può essere specificato solo in un utilizzo di XAML e deve essere elaborato da quello predefinito WPF o in un flusso del nodo XAML intermedio nel percorso di caricamento, se viene elaborato utilizzando Se XAML di .NET Framework servizi e i reader XAML.There is no direct code equivalent for x:Shared in the WPF object model; it can only be specified in a XAML usage and must be processed either by the default WPF behavior or in an intermediate XAML node stream on the load path if processed using .NET Framework XAML Services and its XAML readers.

Uno scenario per x:Shared="false" è se si definisce un FrameworkElement o FrameworkContentElement derivata come una risorsa, quindi si introduce la risorsa dell'elemento in un modello di contenuto.A scenario for x:Shared="false" is if you define a FrameworkElement or FrameworkContentElement derived class as a resource and then you introduce the element resource into a content model. x:Shared="false" Consente di introdurre più volte nella stessa raccolta di una risorsa elemento (ad esempio un UIElementCollection).x:Shared="false" enables an element resource to be introduced multiple times in the same collection (such as a UIElementCollection). Senza x:Shared="false" non è valido perché la raccolta impone l'univocità del relativo contenuto.Without x:Shared="false" this is invalid because the collection enforces uniqueness of its contents. Tuttavia, il x:Shared="false" comportamento crea un'altra istanza identica della risorsa anziché restituire la stessa istanza.However, the x:Shared="false" behavior creates another identical instance of the resource instead of returning the same instance.

Un altro scenario x:Shared="false" è se si utilizza un Freezable risorse per i valori di animazione ma si vuole modificare la risorsa in una singola animazione.Another scenario for x:Shared="false" is if you use a Freezable resource for animation values but want to modify the resource on a per animation basis.

La gestione delle stringhe di false non viene fatta distinzione tra maiuscole e minuscole.The string handling of false is not case sensitive.

In WPF, x:Shared valido solo nelle condizioni seguenti:In WPF, x:Shared is only valid under the following conditions:

Vedere ancheSee Also

ResourceDictionary
Risorse XAMLXAML Resources
Elementi di baseBase Elements