XmlnsPrefixAttribute Classe

Definizione

Identifica un prefisso consigliato da associare a uno spazio dei nomi XAML per l'utilizzo di XAML, quando si scrivono elementi e attributi in un file XAML (serializzazione) o quando si interagisce con un ambiente di progettazione che dispone di funzionalità di modifica XAML.

public ref class XmlnsPrefixAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class XmlnsPrefixAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type XmlnsPrefixAttribute = class
    inherit Attribute
Public NotInheritable Class XmlnsPrefixAttribute
Inherits Attribute
Ereditarietà
XmlnsPrefixAttribute
Attributi

Commenti

Processori o framework XAML che incorporano XAML o qualsiasi processo che esegue la serializzazione XAML deve in genere rispettare il prefisso consigliato. Il prefisso potrebbe essere necessario in qualsiasi caso in cui i prefissi di mapping specifici nell'origine XAML originale non vengano in qualche modo conservati nel grafico degli oggetti di runtime o archiviati in altro modo da un framework o da una tecnologia. Un framework potrebbe avere preferenze specifiche per la serializzazione dei propri tipi che ignorano il prefisso consigliato dai propri assembly; questa operazione può essere eseguita per promuovere in modo coerente uno spazio dei nomi XAML predefinito. Tuttavia, tale framework deve comunque fornire prefissi consigliati per possibili utilizzi di terze parti e strumenti dei tipi XAML. Vedi la sezione "Procedura consigliata per il supporto Designer XAML o la serializzazione generale" di seguito.

Un consiglio generale per i prefissi consiste nell'usare stringhe brevi, perché il prefisso viene in genere applicato a tutti gli elementi serializzati provenienti dallo spazio dei nomi XAML. La lunghezza della stringa di prefisso può avere un effetto notevole sulle dimensioni dell'output XAML serializzato.

Se un prefisso richiesto è già in uso da un altro identificatore dello spazio dei nomi XAML rilevato/serializzato in precedenza, il comportamento non viene specificato (il comportamento è fino a ogni singola implementazione del processore XAML).

Nella maggior parte dei casi, si applica XmlnsPrefixAttribute solo se è stato applicato almeno uno XmlnsDefinitionAttribute nell'assembly per lo stesso spazio dei nomi XAML.

Nelle versioni precedenti di .NET Framework questa classe esisteva nell'assembly specifico di WPF WindowsBase. In .NET Framework 4 XmlnsPrefixAttribute si trova nell'assembly System.Xaml. Per altre informazioni, vedere Types Migrated from WPF to System.Xaml.

Procedura consigliata per il supporto Designer XAML o la serializzazione generale

Anche se intendi che lo spazio dei nomi XAML associato sia lo spazio dei nomi XAML predefinito nella maggior parte dei casi di utilizzo per il framework o la libreria, devi comunque specificare una stringa non vuota come prefisso consigliato per uno spazio dei nomi XAML. Le informazioni predefinite sullo spazio dei nomi XAML vengono trasportate in singoli file XAML e flussi di nodi XAML. Lo spazio dei nomi XAML predefinito e la modalità di definizione in una determinata origine XAML possono essere facilmente perpetuati per la serializzazione per caso senza usare XmlnsPrefixAttribute. Tuttavia, è XmlnsPrefixAttribute utile per i casi in cui l'autore XAML ha scelto di eseguire il mapping dello spazio dei nomi XAML predefinito a un altro elemento. In questo scenario un editor di testo XAML incorporato in un ambiente di progettazione può essere usato XmlnsPrefixAttribute come hint per un mapping iniziale dello spazio dei nomi xmlns XAML. In alternativa, un ambiente di progettazione può aggiungere mapping JUST-In-Time al codice XAML di supporto per metafore di progettazione, ad esempio trascinando gli oggetti da una casella degli strumenti e in un'area di progettazione visiva. Inoltre, è possibile che una finestra di progettazione possa supportare simultaneamente più framework abilitati per XAML e abbia un serializzatore XAML comune che si basa sui servizi XAML di .NET Framework anziché sulla serializzazione specifica del framework. La specifica di un XmlnsPrefixAttribute per questi scenari consente di rendere l'utilizzo XAML più portatile e affidabile se il codice XAML viene scambiato tra gli strumenti di progettazione o viene sottoposto a un round trip tra editor XAML e altri consumer, ad esempio compilatori di markup o altre serializzazioni.

Costruttori

XmlnsPrefixAttribute(String, String)

Inizializza una nuova istanza della classe XmlnsPrefixAttribute.

Proprietà

Prefix

Ottiene il prefisso consigliato associato a questo attributo.

TypeId

Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute.

(Ereditato da Attribute)
XmlNamespace

Ottiene l'identificatore dello spazio dei nomi XAML associato a questo attributo.

Metodi

Equals(Object)

Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.

(Ereditato da Attribute)
GetHashCode()

Restituisce il codice hash per l'istanza.

(Ereditato da Attribute)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IsDefaultAttribute()

In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata.

(Ereditato da Attribute)
Match(Object)

Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato.

(Ereditato da Attribute)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Implementazioni dell'interfaccia esplicita

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.

(Ereditato da Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia.

(Ereditato da Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).

(Ereditato da Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.

(Ereditato da Attribute)

Si applica a

Vedi anche