FrameworkContentElement.Name FrameworkContentElement.Name FrameworkContentElement.Name FrameworkContentElement.Name Property

Definizione

Ottiene o imposta il nome identificativo dell'elemento.Gets or sets the identifying name of the element. Il nome fornisce un riferimento all'istanza in modo il code-behind programmatico, ad esempio il codice di un gestore eventi, possa fare riferimento a un elemento dopo la sua creazione durante l'analisi di XAMLXAML.The name provides an instance reference so that programmatic code-behind, such as event handler code, can refer to an element once it is constructed during parsing of XAMLXAML.

public:
 property System::String ^ Name { System::String ^ get(); void set(System::String ^ value); };
[System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)]
public string Name { get; set; }
member this.Name : string with get, set
Public Property Name As String

Valore della proprietà

Nome dell'elemento.The name of the element.

Implementazioni

Commenti

L'utilizzo più comune di questa proprietà è quando si specifica XAMLXAML un nome di elemento nel markup.The most common usage of this property is when specifying a XAMLXAML element name in markup.

Questa proprietà fornisce essenzialmente una proprietà di praticità a livello di Framework WPF XAMLXAML per impostare la direttiva x:Name.This property essentially provides a WPF framework-level convenience property to set the XAMLXAML x:Name Directive.

Il recupero Name di un oggetto dal codice non è comune, perché se è già presente un riferimento appropriato nel codice, è possibile chiamare solo metodi e proprietà sul riferimento all'elemento e in genere Namenon è necessario.Getting a Name from code is not common, because if you have the appropriate reference in code already, you can just call methods and properties on the element reference and do not generally need the Name. Un'eccezione è rappresentata dal caso in cui la stringa abbia un significato di overload, ad esempio se è utile visualizzare tale Interfaccia utenteUInome in.An exception is if the string has some overloaded meaning, for instance if it is useful to display that name in Interfaccia utenteUI. Non è consigliabile impostare Name dalcodicesel'originaleèstatoimpostatodalmarkupelamodificadellaproprietànonmodificheràilriferimentoall'oggetto.NameSetting a Name from code if the original Name was set from markup is also not recommended, and changing the property will not change the object reference. Tali riferimenti a oggetti vengono creati solo quando i NameScope sottostanti vengono creati in modo XAMLXAML esplicito durante il caricamento.Such object references are created only when the underlying namescopes are explicitly created during XAMLXAML loading.

È necessario chiamare RegisterName in modo specifico per apportare una modifica Name effettiva alla proprietà di un elemento già caricato.You must specifically call RegisterName to make an effective change on the Name property of an already loaded element.

Un caso rilevante in cui Name l'impostazione dal codice è importante per la denominazione degli elementi su cui vengono eseguiti gli storyboard.One notable case where setting Name from code is important is for naming elements that storyboards will run against. Prima di poter registrare un nome, potrebbe anche essere necessario creare un'istanza di e NameScope assegnare un'istanza di.Before you can register a name, might also need to instantiate and assign a NameScope instance. Vedere la sezione di esempio o Cenni preliminari sugli storyboard.See the Example section, or Storyboards Overview.

L' Name impostazione dal codice ha applicazioni limitate, ma la ricerca di un elemento in base al nome è più comune, soprattutto se si usa un modello di navigazione in cui le pagine vengono ricaricate nell'applicazione e il codice di run-time non è necessariamente il code-behind di tale pagina corrispondente.Setting Name from code has limited applications, but looking up an element by name is more common, particularly if you are employing a navigation model where pages reload into the application and the run-time code is not necessarily the code-behind of that respective page. Il metodo FindNamedi FrameworkContentElement utilitàName , disponibile da qualsiasi, può trovare qualsiasi elemento nell'albero logico di tale elemento in modo ricorsivo.The utility method FindName, which is available from any FrameworkContentElement, can find any element by Name in that element's logical tree recursively. In alternativa, è possibile FindLogicalNode usare il metodo LogicalTreeHelperstatico di, che accetta Name anche la stringa come argomento.Or you can use the FindLogicalNode static method of LogicalTreeHelper, which also takes the Name string as an argument.

Gli elementiWindowradice usati di frequente Page , ad esempio, implementano INameScopel'interfaccia.Commonly used root elements (Window, Page for example) implement the interface INameScope. Le implementazioni di questa interfaccia devono imporre che i nomi non siano ambigui nell'ambito.Implementations of this interface are expected to enforce that names be unambiguous within their scope.

Informazioni proprietà di dipendenzaDependency Property Information

Campo identificatoreIdentifier field NameProperty
Proprietà dei metadati impostate sutrueMetadata properties set to true IsAnimationProhibited

Si applica a

Vedi anche