Share via


Attributo x:FieldModifier

Aggiornamento: novembre 2007

Modifica il comportamento di compilazione di XAML, in modo che i campi per i riferimenti a oggetti denominati vengano definiti con accesso NonPublic piuttosto che con il comportamento predefinito Public.

Utilizzo della sintassi XAML per gli attributi

<object x:FieldModifier="Public".../>

Valori XAML

Public

Stringa esatta da passare per specificare la differenza tra Public e NonPublic in base al linguaggio di programmazione code-behind utilizzato. Vedere la sezione Osservazioni.

Dipendenze

Anche l'attributo x:Name deve essere fornito nello stesso elemento.

Note

Il valore per l'attributo x:FieldModifier varierà in base al linguaggio di programmazione. La stringa da utilizzare dipenderà dal modo in cui ciascun linguaggio implementa CodeDomProvider, dai convertitori di tipi restituiti per definire i significati di TypeAttributes.Public e TypeAttributes.NonPublic e dall'eventualità che per tale linguaggio venga applicata la distinzione tra maiuscole e minuscole.

  • Per C#, la stringa da passare per definire Public è public.

  • Per Microsoft Visual Basic .NET, la stringa da passare per definire Public è Public.

  • Per C++/CLI, le destinazioni C++/CLI non supportano attualmente la compilazione di XAML.

È possibile specificare anche NonPublic (internal in C#, Friend in Microsoft Visual Basic .NET), anche se si tratta di un'operazione non comune, in quanto NonPublic rappresenta già il comportamento predefinito.

NonPublic è l'impostazione predefinita, poiché è insolito che il codice esterno all'assembly che ha compilato la sintassi XAML debba accedere a un elemento creato in XAML. Grazie all'architettura di sicurezza WPF è possibile scegliere consapevolmente di non rendere pubblici i campi che memorizzano le istanze dell'elemento, a meno che non si imposti in modo specifico l'attributo x:FieldModifier.

L'attributo x:FieldModifier è rilevante solo per gli elementi con un attributo Attributo x:Name, poiché tale nome viene utilizzato per fare riferimento al campo in quanto pubblico.

La classe parziale per l'elemento radice è pubblica per impostazione predefinita, ma può essere resa non pubblica utilizzando Attributo x:ClassModifier. Attributo x:ClassModifier influisce anche sul livello di accesso dell'istanza della classe di elementi radice. È possibile posizionare sia x:Name, sia x:FieldModifier nell'elemento radice, tuttavia questa operazione consente solo di creare una copia del campo pubblico dell'elemento radice, mentre il livello di accesso della classe del vero elemento radice è ancora controllato da Attributo x:ClassModifier.

Vedere anche

Concetti

XAML e classi personalizzate

Code-behind e XAML

Compilazione di un'applicazione WPF

Riferimenti

Attributo x:Name

Attributo x:ClassModifier