Partager via


Propriétés des propriétés de domaine

Une propriété de domaine est une fonctionnalité d’un élément de modèle qui peut contenir une valeur. Par exemple, la classe de domaine Person pourrait avoir des propriétés Name et BirthDate. Dans la définition DSL, les propriétés de domaine sont énumérées dans la zone de classe de domaine sur le diagramme et sous la classe de domaine dans l'Explorateur DSL. Pour plus d’informations, consultez Comment définir un langage spécifique à un domaine.

Notes

Le mot « propriété » a deux utilisations. Une propriété de domaine est une fonctionnalité que vous définissez sur une classe de domaine. Par contraste, de nombreux éléments d’un DSL ont des propriétés, qui sont énumérées dans la fenêtre Propriétés dans la définition DSL. Par exemple, chaque propriété de domaine possède un jeu de propriétés qui sont décrites dans cette rubrique.

Au moment de l'exécution, quand un utilisateur crée des instances de la classe de domaine, les valeurs des propriétés de domaine sont visibles dans la fenêtre Propriétés et peuvent être affichées sur les formes.

La plupart des propriétés de domaine sont implémentées en tant que propriétés CLR ordinaires. Toutefois, du point de vue de la programmation, les propriétés de domaine ont des fonctionnalités enrichies par rapport aux propriétés de programme ordinaires :

Propriété Description Valeur par défaut
Description Description utilisée pour documenter l'interface utilisateur du concepteur généré. <Aucune>
Nom complet Non affiché dans le concepteur généré pour cette propriété de domaine. Il peut contenir des espaces et une ponctuation, par exemple « Titre du morceau ». <Aucune>
Element Name Provider Applicable uniquement si vous avez affecté la valeur Is Element Name à true. Vous pouvez écrire du code qui fournit un nom pour un nouvel élément d'une classe de domaine et qui remplace le comportement par défaut.

Dans un fichier de code dans le projet DSL, créez une classe dérivée de ElementNameProvider.

Ensuite, dans l'Explorateur DSL, cliquez avec le bouton droit sur la racine de la solution DSL, puis cliquez sur Ajouter un type externe. Entrez le nom de votre classe.

Sélectionnez de nouveau cette propriété de domaine et sélectionnez le nom de la classe dans la liste déroulante.
<Aucune>
Getter Access Modifier Niveau d'accès de la classe de domaine (public ou internal). Contrôle l'étendue selon laquelle le code de programme peut accéder à la propriété. public
Help Keyword Mot clé facultatif servant à indexer l'aide F1 pour cette propriété de domaine. <Aucune>
Is Browsable Si True, la propriété de domaine est présentée à l'utilisateur dans la fenêtre de propriétés quand des modèles de cette solution DSL sont ouverts.

Si False, la propriété de domaine est masquée dans l'interface utilisateur.

Si vous souhaitez rendre la propriété de domaine visible mais en lecture seule, activezIs UI Read Only.
True
Is Element Name Si True, cette propriété de domaine est affichée comme nom de son élément de modèle dans l'Explorateur DSL.

Les nouveaux éléments de modèle reçoivent une valeur par défaut unique pour cette propriété. Si vous voulez contrôler la manière dont ces valeurs sont générées, activez Element Name Provider.
False
Is UI Read Only Si True, la valeur de la propriété de domaine ne peut pas être modifiée à l'aide de l'interface utilisateur. Elle peut quand même être définie par des programmes et sera visible dans la fenêtre Propriétés.

Si vous souhaitez masquer la propriété de domaine aux yeux de l’utilisateur, activez Is Browsable. Si vous voulez contrôler l’accès par les programmes, activez Setter Access Modifier.
False
Type Genre de propriété de domaine (Normal, Calculated ou CustomStorage). Pour plus d’informations, consultez Propriétés de stockage calculées et personnalisées. Normal
Nom Nom de cette propriété de domaine. Il doit s’agir d’un identificateur valide, par exemple SongTitle. <Aucune>
Remarques Remarques informelles associées à cette propriété de domaine. <Aucune>
Setter Access Modifier Modificateur d'accès pour la méthode Setter. Contrôle l'étendue selon laquelle le code de programme peut définir la propriété. public
Type Type de propriété. Pour ajouter à la liste de types disponibles, cliquez avec le bouton droit sur la racine du DSL dans l’explorateur DSL, puis cliquez sur Ajouter un type externe. String

Voir aussi