ImageField, classe
Objet léger qui représente une partie d'une forme qui peut afficher les éléments décoratifs ou les arrière-plans d'image.
Hiérarchie d'héritage
System.Object
Microsoft.VisualStudio.Modeling.Diagrams.ShapeField
Microsoft.VisualStudio.Modeling.Diagrams.ImageField
Espace de noms : Microsoft.VisualStudio.Modeling.Diagrams
Assembly : Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0 (dans Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0.dll)
Syntaxe
'Déclaration
Public Class ImageField _
Inherits ShapeField
public class ImageField : ShapeField
Le type ImageField expose les membres suivants.
Constructeurs
Nom | Description | |
---|---|---|
ImageField(String) | Initialise une nouvelle instance de la classe ImageField. | |
ImageField(String, Image) | Initialise une nouvelle instance de la classe ImageField. |
Début
Propriétés
Nom | Description | |
---|---|---|
AnchoringBehavior | Décrit comment le contenu du champ doit se positionner et se dimensionner en fonction du ShapeElement parent. (Hérité de ShapeField.) | |
DefaultAccessibleDescription | Obtient ou définit la description accessible par défaut. (Hérité de ShapeField.) | |
DefaultAccessibleName | Obtient ou définit le nom par défaut du champ de forme pour l'objet accessible. (Hérité de ShapeField.) | |
DefaultAccessibleState | Obtient l'état par défaut du champ de forme pour l'objet accessible. (Hérité de ShapeField.) | |
DefaultBackgroundBrushId | Obtient ou définit l'ID du pinceau par défaut utilisé pour peindre l'arrière-plan du champ de forme. (Hérité de ShapeField.) | |
DefaultFocusable | Obtient le champ de forme et vérifie s'il peut recevoir le focus, ou donne au champ de forme la possibilité de recevoir le focus. (Hérité de ShapeField.) | |
DefaultImage | Obtient ou définit l'image par défaut associée à ce ImageField.L'image par défaut peut être personnalisée en substituant la méthode GetDisplayImage. | |
DefaultInactiveSelectedBackgroundBrushId | Obtient ou définit l'ID du pinceau d'arrière-plan par défaut pour le champ de la forme. (Hérité de ShapeField.) | |
DefaultPenId | Obtient ou définit l'ID du stylet par défaut à utiliser pour le champ de la forme. (Hérité de ShapeField.) | |
DefaultReflectParentFocusedState | Obtient le champ de la forme enfant et vérifie s'il doit recevoir le focus lorsque sa forme parente reçoit le focus ou définit la capacité de refléter l'état de focus de sa forme parente. (Hérité de ShapeField.) | |
DefaultReflectParentSelectedState | Obtient le champ de la forme enfant et vérifie s'il doit être sélectionné lorsque sa forme parente est activée ou définit la capacité de refléter l'état de sélection de sa forme parent. (Hérité de ShapeField.) | |
DefaultSelectable | Obtient le champ de forme et vérifie s'il peut être sélectionné par défaut ou définit l'état de sélection par défaut du champ de forme. (Hérité de ShapeField.) | |
DefaultSelectedBackgroundBrushId | Obtient ou définit l'ID du pinceau d'arrière-plan par défaut pour le champ de la forme. (Hérité de ShapeField.) | |
DefaultUnscaled | Obtient ou définit une valeur indiquant si l'image doit être dessinée sans mise à l'échelle par rapport aux limites de ce champ ou si l'image doit être mise à l'échelle pour s'adapter aux limites. | |
DefaultVisibility | Obtient le champ de forme et vérifie s'il apparaît par défaut ou définit la visibilité par défaut du champ de forme. (Hérité de ShapeField.) | |
Name | Obtient le nom du champ de forme. (Hérité de ShapeField.) |
Début
Méthodes
Nom | Description | |
---|---|---|
AccessibleDoDefaultAction | Exécute l'action par défaut pour l'objet accessible. (Hérité de ShapeField.) | |
AllowInPlaceEditorAutoSize | Active l'éditeur sur place à dimensionner automatiquement dans le champ de la forme. (Hérité de ShapeField.) | |
AssociateValueWith(Store, AssociatedPropertyInfo) | Associe le champ de forme avec une propriété de domaine qui est assignée à un élément de forme. (Hérité de ShapeField.) | |
AssociateValueWith(Store, Guid) | Associe le champ de forme avec une propriété de domaine qui est assignée à un élément de forme. (Hérité de ShapeField.) | |
AssociateValueWith(Store, Guid, AssociatedPropertyInfo) | Associe le champ de forme avec une propriété de domaine qui est assignée à un élément de forme. (Hérité de ShapeField.) | |
AssociateVisibilityWith(Store, AssociatedPropertyInfo) | Associe la visibilité du champ de forme avec une propriété de domaine qui est assignée à un élément de forme. (Hérité de ShapeField.) | |
AssociateVisibilityWith(Store, Guid) | Associe la visibilité du champ de forme avec une propriété de domaine qui est assignée à un élément de forme. (Hérité de ShapeField.) | |
AssociateVisibilityWith(Store, Guid, AssociatedPropertyInfo) | Associe la visibilité du champ de forme avec une propriété de domaine qui est assignée à un élément de forme. (Hérité de ShapeField.) | |
CanEditValue | Obtient le champ de forme et vérifie s'il peut être modifié. (Hérité de ShapeField.) | |
CommitPendingEdit | Valide les modifications en attente. (Hérité de ShapeField.) | |
DoHitTest | Exécute un test de positionnement sur un point spécifié du diagramme pour déterminer si le point se trouve dans les limites du champ de forme. (Hérité de ShapeField.) | |
DoKeyboardNavigation | Navigue dans le domaine de forme à l'aide du clavier. (Hérité de ShapeField.) | |
DoPaint | Dessine le contenu du ShapeField. (Substitue ShapeField.DoPaint(DiagramPaintEventArgs, ShapeElement).) | |
EditValue(ShapeElement, DiagramClientView) | Ouvre l'éditeur sur place pour le champ de la forme. (Hérité de ShapeField.) | |
EditValue(ShapeElement, DiagramClientView, PointD) | Ouvre l'éditeur sur place pour le champ de la forme. (Hérité de ShapeField.) | |
Equals | Détermine si l'objet spécifié est identique à l'objet actuel. (Hérité de Object.) | |
Finalize | Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.) | |
FindFirstChild | Localise le premier champ de forme enfant dans le champ de forme parent. (Hérité de ShapeField.) | |
FindLastChild | Localise le dernier champ de forme enfant dans le champ de forme parent. (Hérité de ShapeField.) | |
FindNextChild | Localise le prochain champ de forme enfant dans le champ de forme parent. (Hérité de ShapeField.) | |
FindNextInChildSubFields | Localise le champ de forme enfant suivant dans la séquence de navigation. (Hérité de ShapeField.) | |
FindPreviousChild | Localise le premier champ de forme enfant précédent dans le champ de forme parent. (Hérité de ShapeField.) | |
FindPreviousInChildSubFields | Localise le champ de forme enfant précédent dans la séquence de navigation. (Hérité de ShapeField.) | |
Focused | Obtient le champ de forme et vérifie s'il a le focus. (Hérité de ShapeField.) | |
GetAccessibilityObject | Obtient l'objet d'accessibilité qui est assigné au champ de la forme. (Hérité de ShapeField.) | |
GetAccessibleChild | Obtient l'objet Accessibility pour le champ enfant de la forme. (Hérité de ShapeField.) | |
GetAccessibleChildCount | Obtient le nombre d'objets Accessibility assignés au champ de forme parent et à ses champs de forme enfants. (Hérité de ShapeField.) | |
GetAccessibleDefaultActionDescription | Obtient l'objectif par défaut du champ de forme pour l'objet accessible. (Hérité de ShapeField.) | |
GetAccessibleDescription | Retourne la description accessible par défaut pour un champ d'image. (Substitue ShapeField.GetAccessibleDescription(ShapeElement).) | |
GetAccessibleHelp | Obtient l'aide du champ de forme pour l'objet accessible. (Hérité de ShapeField.) | |
GetAccessibleHelpTopicFileName | Obtient une rubrique de l'aide associée à l'objet accessible. (Hérité de ShapeField.) | |
GetAccessibleHelpTopicId | Obtient l'ID assigné à la rubrique d'aide de l'objet accessible. (Hérité de ShapeField.) | |
GetAccessibleName | Retourne le nom accessible par défaut pour un champ d'image. (Substitue ShapeField.GetAccessibleName(ShapeElement).) | |
GetAccessibleRole | Extrait le rôle accessible de ce ShapeField. (Substitue ShapeField.GetAccessibleRole(ShapeElement).) | |
GetAccessibleState | Obtient l'état du champ de forme pour l'objet accessible. (Hérité de ShapeField.) | |
GetAccessibleValue | Obtient la valeur dans le champ de forme pour l'objet accessible. (Hérité de ShapeField.) | |
GetActiveInPlaceEditor | Obtient l'éditeur sur place qui est actif. (Hérité de ShapeField.) | |
GetBackgroundBrush | Obtient le pinceau qui dessine l'arrière-plan de l'élément Shape auquel ce champ de forme est assigné. (Hérité de ShapeField.) | |
GetBackgroundBrushId | Obtient l'ID du pinceau qui dessine l'arrière-plan de l'élément Shape auquel ce champ de forme est assigné. (Hérité de ShapeField.) | |
GetBounds | Obtient les limites pour le champ de la forme. (Hérité de ShapeField.) | |
GetCursor | Obtient le pointeur qui s'affiche lorsque la souris pointe sur le champ de forme. (Hérité de ShapeField.) | |
GetDisplayImage | Obtient l'image devant être affichée par ce champ. | |
GetFocusable | Obtient le champ de forme et vérifie s'il peut recevoir le focus. (Hérité de ShapeField.) | |
GetHashCode | Sert de fonction de hachage par défaut. (Hérité de Object.) | |
GetInPlaceEditorBounds | Obtient les limites de l'éditeur sur place. (Hérité de ShapeField.) | |
GetMaximumInPlaceEditorSize | Obtient les limites maximales de l'éditeur sur place. (Hérité de ShapeField.) | |
GetMinimumInPlaceEditorSize | Obtient les limites minimales de l'éditeur sur place. (Hérité de ShapeField.) | |
GetMinimumSize | Retourne la taille minimale de l'ImageField. (Substitue ShapeField.GetMinimumSize(ShapeElement).) | |
GetPen | Obtient le stylet utilisé pour dessiner l'élément de forme auquel le champ de forme est assigné. (Hérité de ShapeField.) | |
GetPenId | Obtient l'ID du stylet utilisé pour dessiner l'élément Shape auquel le champ de forme est assigné. (Hérité de ShapeField.) | |
GetPotentialMouseAction | Obtient l'action de la souris à activer lorsque l'utilisateur clique ensuite sur un point spécifique dans le diagramme. (Hérité de ShapeField.) | |
GetSelectable | Obtient le champ de forme et vérifie s'il peut être sélectionné. (Hérité de ShapeField.) | |
GetType | Obtient le Type de l'instance actuelle. (Hérité de Object.) | |
GetUnscaled | Obtient une valeur indiquant si l'image doit être dessinée ajustée ou non. | |
GetValue | Obtient la valeur dans le champ de forme. (Hérité de ShapeField.) | |
GetValueDomainPropertyInfo | Obtient la propriété de domaine qui est assignée à la valeur dans le champ de forme. (Hérité de ShapeField.) | |
GetVisible | Obtient le champ de forme et vérifie s'il apparaît. (Hérité de ShapeField.) | |
HasFocusedAppearance | Obtient le champ de forme et vérifie s'il doit apparaître comme ayant le focus. (Hérité de ShapeField.) | |
HasPendingEdit | Obtient le champ de forme et vérifie si son éditeur sur place est actif et si une modification est en attente. (Hérité de ShapeField.) | |
HasSelectedAppearance | Obtient le champ de forme et vérifie s'il semble être sélectionné. (Hérité de ShapeField.) | |
IsNavigationKey(Char) | Obtient la clé que l'utilisateur a utilisée et vérifie si elle peut être utilisée pour naviguer entre les champs de forme. (Hérité de ShapeField.) | |
IsNavigationKey(Keys) | Obtient les clés utilisées par l'utilisateur et vérifie si elles peuvent être utilisées pour naviguer entre les champs de forme. (Hérité de ShapeField.) | |
MemberwiseClone | Crée une copie superficielle de l'objet Object actuel. (Hérité de Object.) | |
NavigateAscend | Déplace le focus sur le champ de forme précédent dans la séquence de navigation pour les formes sélectionnées. (Hérité de ShapeField.) | |
NavigateDescend | Déplace le focus sur le prochain champ de forme dans la séquence de navigation pour les formes sélectionnées. (Hérité de ShapeField.) | |
NavigateToFirst | Déplace le focus sur le premier champ de forme dans la séquence de navigation pour les formes sélectionnées. (Hérité de ShapeField.) | |
NavigateToLast | Déplace le focus sur le dernier champ de forme dans la séquence de navigation pour les formes sélectionnées. (Hérité de ShapeField.) | |
NavigateToNext | Déplace le focus sur le prochain champ de forme dans la séquence de navigation pour les formes sélectionnées. (Hérité de ShapeField.) | |
NavigateToPrevious | Déplace le focus sur le champ de forme précédent dans la séquence de navigation pour les formes sélectionnées. (Hérité de ShapeField.) | |
OnBeginEdit | Avertit les écouteurs lorsque l'édition sur place a commencé. (Hérité de ShapeField.) | |
OnClick | Avertit les écouteurs lorsque l'utilisateur a cliqué sur un champ de forme. (Hérité de ShapeField.) | |
OnDoubleClick | Avertit les écouteurs lorsque l'utilisateur a double-cliqué sur un champ de forme. (Hérité de ShapeField.) | |
OnEndEdit | Avertit les écouteurs lorsque l'édition sur place est terminée. (Hérité de ShapeField.) | |
OnKeyDown | Avertit les écouteurs lorsque l'utilisateur maintient une touche enfoncée tout en pointant un champ de forme avec la souris. (Hérité de ShapeField.) | |
OnKeyPress | Avertit les écouteurs lorsque l'utilisateur a appuyé sur une touche tout en pointant un champ de forme avec la souris. (Hérité de ShapeField.) | |
OnKeyUp | Avertit les écouteurs lorsque l'utilisateur a relâché une touche tout en pointant un champ de forme avec la souris. (Hérité de ShapeField.) | |
OnMouseDown | Avertit les écouteurs lorsque l'utilisateur maintient le bouton de la souris enfoncé sur un champ de forme. (Hérité de ShapeField.) | |
OnMouseMove | Avertit les écouteurs lorsque la souris a été déplacée sur un champ de forme. (Hérité de ShapeField.) | |
OnMouseUp | Avertit les écouteurs lorsque l'utilisateur a relâché le bouton de la souris sur un champ de forme. (Hérité de ShapeField.) | |
OnMouseWheel | Avertit les écouteurs lorsque la souris a été pivotée au-dessus un champ de forme. (Hérité de ShapeField.) | |
Selected | Obtient le champ de forme et vérifie s'il est sélectionné. (Hérité de ShapeField.) | |
SetSelectionRange | Définit la sélection sur une plage de champs de forme enfants. (Hérité de ShapeField.) | |
SetValue | Assigne la valeur spécifiée à un champ de forme. (Hérité de ShapeField.) | |
SetVisible | Définit la visibilité du champ de forme. (Hérité de ShapeField.) | |
ToString | Retourne une chaîne qui représente l'objet actif. (Hérité de Object.) |
Début
Notes
Lorsque vous définissez un décorateur image dans une forme, et lorsque vous définissez une forme de l'image, la zone de la page est affichée est géré par un ImageField. Pour obtenir des exemples de l'initialisation d'ImageFields et d'un autre ShapeFields, inspectez DSL GeneratedCode\\ Shapes.cs dans votre solution business DSL.
Un ImageField est un objet qui gère une zone dans une forme, telles que l'espace attribué à un décorateur. Une instance d'ImageField est partagée entre de nombreuses formes à la même classe de forme. L'instance de ImageField ne stocke pas une image distincte pour chaque forme : au lieu de cela, la méthode d'GetDisplayImage(ShapeElement) prend la forme en tant que paramètre, puis peut rechercher le de l'image sur l'état actuel de la forme et de son élément de modèle.
Si vous souhaitez que le comportement particulier telle qu'une image variable, vous pouvez créer votre propre classe dérivée d'ImageField.
Pour créer une sous-classe d'ImageField
Définissez la propriété Génère un double dérivée de la classe parente de forme dans la définition de DSL.
Substituez la méthode de InitializeShapeFields de la classe de forme.
- Crée un nouveau fichier de code dans le projet de DSL, puis entrez une définition de classe partielle de la classe de forme. Remplacer la définition de la méthode.
Inspectez le code d'InitializeShapeFields dans GeneratedCode DSL\\ Shapes.cs.
Dans la méthode override, appelez la méthode de base puis créez une instance de votre propre classe de champ d'image. Utilisez cette option pour remplacer le champ standard de l'image dans la liste des shapeFields.
Exemples
L'exemple réalise un dépend de modification de l'icône dans l'état de l'élément de modèle de la forme.
Avertissement
Cet exemple montre comment élaborer un décorateur d'image dynamique.Mais si vous souhaitez simplement basculer entre un ou deux images en fonction de l'état d'une variable de modèle, il est plus simple de créer plusieurs décorateurs image, les recherche dans la même position dans la zone, puis définit le filtre de visibilité pour dépendre des valeurs spécifiques de la variable de modèle.Pour définir le filtre, sélectionnez la carte de forme dans la définition de DSL, ouvrez la fenêtre détails de DSL, puis cliquez sur l'onglet de décorateurs.
Pour exécuter cet exemple de code, créez une nouvelle solution de DSL à l'aide de le modèle minimale de langage. Ajoutez une propriété de domaine AlternateState valeur booléenne de la classe de domaine d'ExampleElement. Ajoutez un décorateur d'icône à la classe d'ExampleShape, et définir son image dans un fichier bitmap. Cliquez sur Transformer tous les modèles. Ajoutez un nouveau fichier de code dans le projet de DSL, puis insérez le code suivant.
Pour tester le code, appuyez sur F5 et, dans la solution de débogage, ouvrez un exemple de schéma. L'état par défaut de l'icône doit apparaître. Sélectionnez la forme et dans la fenêtre des Propriétés, remplacez la valeur de la propriété AlternateState. L'icône doit ensuite être croisées dynamiquement à 90 degrés, sous la forme.
using Microsoft.VisualStudio.Modeling;
using Microsoft.VisualStudio.Modeling.Diagrams;
...
partial class ExampleShape
{
/// <summary>
/// Compose a list of the fields in this shape.
/// Called once for each shape class.
/// </summary>
/// <param name="shapeFields"></param>
protected override void InitializeShapeFields(IList<ShapeField> shapeFields)
{
// Fields set up according to DSL Definition:
base.InitializeShapeFields(shapeFields);
// Replace the image field:
ShapeField oldField = ShapeElement.FindShapeField(shapeFields, "IconDecorator");
shapeFields.Remove(oldField);
// Must keep the same name:
MyImageField newField = new MyImageField(oldField.Name);
shapeFields.Add(newField);
newField.DefaultImage = (oldField as ImageField).DefaultImage.Clone() as System.Drawing.Image;
}
}
public class MyImageField : ImageField
{
public MyImageField(string tag) : base(tag) { }
/// <summary>
/// Get the image for this field in the given shape.
/// </summary>
public override System.Drawing.Image GetDisplayImage(ShapeElement parentShape)
{
ExampleElement element = parentShape.ModelElement as ExampleElement;
if (element.AlternateState == true)
return AlternateImage;
else
return base.GetDisplayImage(parentShape);
}
private System.Drawing.Image alternateImage;
public System.Drawing.Image AlternateImage
{
get
{
if (alternateImage == null)
{
// Alternate image is a copy of the default, rotated by 90 degrees:
alternateImage = this.DefaultImage.Clone() as System.Drawing.Image;
alternateImage.RotateFlip(System.Drawing.RotateFlipType.Rotate90FlipNone);
}
return alternateImage;
}
}
}
}
Sécurité des threads
Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.