FrameworkContentElement.Name Propriété

Définition

Obtient ou définit le nom d’identification de l’élément.Gets or sets the identifying name of the element. Le nom fournit une référence d’instance pour permettre à du code-behind programmatique, tel que le code d’un gestionnaire d’événements, de faire référence à un élément une fois qu’il est construit pendant l’analyse de 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; }
[<System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)>]
member this.Name : string with get, set
Public Property Name As String

Valeur de propriété

String

Nom de l'élément.The name of the element.

Implémente

Attributs

Remarques

L’utilisation la plus courante de cette propriété est la spécification d’un XAMLXAML nom d’élément dans le balisage.The most common usage of this property is when specifying a XAMLXAML element name in markup.

Cette propriété fournit essentiellement une propriété de commodité au niveau de l’infrastructure WPF pour définir la XAMLXAML directive x :Name.This property essentially provides a WPF framework-level convenience property to set the XAMLXAML x:Name Directive.

L’obtention Name d’un à partir du code n’est pas courante, car si vous disposez déjà de la référence appropriée dans le code, vous pouvez simplement appeler des méthodes et des propriétés sur la référence de l’élément et vous n’avez généralement pas besoin de Name .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. Une exception est si la chaîne a une signification surchargée, par exemple s’il est utile d’afficher ce nom dans UIUI .An exception is if the string has some overloaded meaning, for instance if it is useful to display that name in UIUI. Définir un Name à partir du code si le jeu d’origine Name a été défini à partir du balisage n’est pas non plus recommandé, et la modification de la propriété ne modifiera pas la référence d’objet.Setting 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. Ces références d’objet sont créées uniquement lorsque les portées de port sous-jacentes sont créées explicitement pendant le XAMLXAML chargement.Such object references are created only when the underlying namescopes are explicitly created during XAMLXAML loading.

Vous devez spécifiquement appeler RegisterName pour apporter une modification effective sur la Name propriété d’un élément déjà chargé.You must specifically call RegisterName to make an effective change on the Name property of an already loaded element.

Un exemple notable où le paramétrage Name à partir du code est important est pour nommer les éléments sur lesquels les storyboards s’exécuteront.One notable case where setting Name from code is important is for naming elements that storyboards will run against. Avant de pouvoir inscrire un nom, vous devrez peut-être également instancier et assigner une NameScope instance.Before you can register a name, might also need to instantiate and assign a NameScope instance. Consultez la section exemple ou vue d’ensemble des storyboards.See the Example section, or Storyboards Overview.

Le paramétrage Name à partir du code a des applications limitées, mais la recherche d’un élément par nom est plus courante, en particulier si vous utilisez un modèle de navigation où les pages se rechargent dans l’application et que le code d’exécution n’est pas nécessairement le code-behind de cette page respective.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. La méthode utilitaire FindName , disponible à partir de n’importe quel FrameworkContentElement élément, peut trouver n’importe quel élément par Name dans l’arborescence logique de cet élément de manière récursive.The utility method FindName, which is available from any FrameworkContentElement, can find any element by Name in that element's logical tree recursively. Vous pouvez également utiliser la FindLogicalNode méthode statique de LogicalTreeHelper , qui prend également la Name chaîne comme argument.Or you can use the FindLogicalNode static method of LogicalTreeHelper, which also takes the Name string as an argument.

Les éléments racines couramment utilisés ( Window , Page par exemple) implémentent l’interface INameScope .Commonly used root elements (Window, Page for example) implement the interface INameScope. Les implémentations de cette interface sont supposées imposer que les noms ne soient pas ambigus dans leur portée.Implementations of this interface are expected to enforce that names be unambiguous within their scope.

Informations sur les propriétés de dépendanceDependency Property Information

Champ d’identificateurIdentifier field NameProperty
Propriétés de métadonnées définies sur trueMetadata properties set to true IsAnimationProhibited

S’applique à

Voir aussi