ImageField-Klasse
Lightweight-Objekt, das einen Teil einer Form darstellt, die Decorator-Elemente oder Hintergründe der grafischen Darstellung anzeigen kann.
Vererbungshierarchie
System.Object
Microsoft.VisualStudio.Modeling.Diagrams.ShapeField
Microsoft.VisualStudio.Modeling.Diagrams.ImageField
Namespace: Microsoft.VisualStudio.Modeling.Diagrams
Assembly: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0 (in Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0.dll)
Syntax
'Declaration
Public Class ImageField _
Inherits ShapeField
public class ImageField : ShapeField
Der ImageField-Typ macht die folgenden Member verfügbar.
Konstruktoren
Name | Beschreibung | |
---|---|---|
ImageField(String) | Initialisiert eine neue Instanz der ImageField-Klasse. | |
ImageField(String, Image) | Initialisiert eine neue Instanz der ImageField-Klasse. |
Zum Seitenanfang
Eigenschaften
Name | Beschreibung | |
---|---|---|
AnchoringBehavior | Beschreibt, wie der Inhalt des Felds und seine Größe in Bezug auf das übergeordnete ShapeElement positioniert werden soll. (Von ShapeField geerbt.) | |
DefaultAccessibleDescription | Ruft die standardmäßige barrierefreie Beschreibung ab oder legt diese fest. (Von ShapeField geerbt.) | |
DefaultAccessibleName | Ruft den Standardnamen des Formfelds für das barrierefreie Objekt ab oder legt diesen fest. (Von ShapeField geerbt.) | |
DefaultAccessibleState | Ruft den Standardzustand des Formfelds für das zugreifbare Objekt ab. (Von ShapeField geerbt.) | |
DefaultBackgroundBrushId | Ruft die ID des standardmäßigen Pinsels ab, mit dem der Hintergrund des Formfelds gezeichnet wird, oder legt diese fest. (Von ShapeField geerbt.) | |
DefaultFocusable | Ruft das Feld "Form" ab und überprüft, ob es den Fokus erhalten kann, oder gibt dem Feld die Möglichkeit, den Fokus zu empfangen. (Von ShapeField geerbt.) | |
DefaultImage | Ruft das Standardbild ab, das diesem ImageField zugeordnet ist, oder legt dieses fest.Das Standardbild kann durch Überschreiben der GetDisplayImage-Methode angepasst werden. | |
DefaultInactiveSelectedBackgroundBrushId | Ruft die ID des Standardhintergrundpinsels für das Formfeld ab oder legt diese fest. (Von ShapeField geerbt.) | |
DefaultPenId | Ruft die ID des standardmäßigen Stiftes ab, der für das Formfeld verwendet wird, oder legt diese fest. (Von ShapeField geerbt.) | |
DefaultReflectParentFocusedState | Ruft die untergeordnete Form ab und überprüft, ob es den Fokus erhalten sollte, wenn ihre übergeordnete Form den Fokus erhält oder legt die Fähigkeit fest, den Fokus zu reflektieren. (Von ShapeField geerbt.) | |
DefaultReflectParentSelectedState | Ruft die untergeordnete Form ab und überprüft, ob sie ausgewählt werden sollte, wenn ihre übergeordnete Form ausgewählt ist oder legt die die Fähigkeit fest, die Auswahl zu reflektieren. (Von ShapeField geerbt.) | |
DefaultSelectable | Ruft das Feld "Form" ab und überprüft, ob es standardmäßig ausgewählt werden kann, oder legt den Standardwert des Felds im ausgewählten Zustand fest. (Von ShapeField geerbt.) | |
DefaultSelectedBackgroundBrushId | Ruft die ID des Standardhintergrundpinsels für das Formfeld ab oder legt diese fest. (Von ShapeField geerbt.) | |
DefaultUnscaled | Ruft ab oder legt fest, ob ein Bild unskaliert gezeichnet werden soll, in Bezug auf die Grenzen dieses Felds, oder ob das Bild skaliert werden soll, um in die angegebenen Begrenzungen zu passen. | |
DefaultVisibility | Ruft das Feld "Form" ab und überprüft, ob es standardmäßig angezeigt wird oder legt die standardmäßige Sichtbarkeit des Felds fest. (Von ShapeField geerbt.) | |
Name | Ruft den Namen des ausgeblendeten Formfelds ab. (Von ShapeField geerbt.) |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
AccessibleDoDefaultAction | Führt die Standardaktion für das Objekt, auf das zugegriffen werden kann, aus. (Von ShapeField geerbt.) | |
AllowInPlaceEditorAutoSize | Aktiviert den direkten Editor, der im Formfeld automatisch angepasst werden soll. (Von ShapeField geerbt.) | |
AssociateValueWith(Store, AssociatedPropertyInfo) | Ordnet das Form-Feld einer Domäneneigenschaft zu, die zu einem Form-Element zugewiesen ist. (Von ShapeField geerbt.) | |
AssociateValueWith(Store, Guid) | Ordnet das Form-Feld einer Domäneneigenschaft zu, die zu einem Form-Element zugewiesen ist. (Von ShapeField geerbt.) | |
AssociateValueWith(Store, Guid, AssociatedPropertyInfo) | Ordnet das Form-Feld einer Domäneneigenschaft zu, die zu einem Form-Element zugewiesen ist. (Von ShapeField geerbt.) | |
AssociateVisibilityWith(Store, AssociatedPropertyInfo) | Ordnet die Sichtbarkeit des Form-Felds einer Domäneneigenschaft, die einem Form-Element zugewiesen ist. (Von ShapeField geerbt.) | |
AssociateVisibilityWith(Store, Guid) | Ordnet die Sichtbarkeit des Form-Felds einer Domäneneigenschaft, die einem Form-Element zugewiesen ist. (Von ShapeField geerbt.) | |
AssociateVisibilityWith(Store, Guid, AssociatedPropertyInfo) | Ordnet die Sichtbarkeit des Form-Felds einer Domäneneigenschaft, die einem Form-Element zugewiesen ist. (Von ShapeField geerbt.) | |
CanEditValue | Ruft das Feld "Form" ab und überprüft, ob es bearbeitet werden kann. (Von ShapeField geerbt.) | |
CommitPendingEdit | Führt einen Commit für die anstehende Bearbeitung aus. (Von ShapeField geerbt.) | |
DoHitTest | Führt einen Treffertest für einen angegebenen Punkt im Diagramm aus, um zu bestimmen, ob der Punkt innerhalb der angegebenen Begrenzungen des Formfelds ist. (Von ShapeField geerbt.) | |
DoKeyboardNavigation | Navigiert im Formfeld mithilfe der Tastatur. (Von ShapeField geerbt.) | |
DoPaint | Zeichnet den Inhalt des ShapeField. (Überschreibt ShapeField.DoPaint(DiagramPaintEventArgs, ShapeElement).) | |
EditValue(ShapeElement, DiagramClientView) | Öffnet den direkten Editor für das Formfeld. (Von ShapeField geerbt.) | |
EditValue(ShapeElement, DiagramClientView, PointD) | Öffnet den direkten Editor für das Formfeld. (Von ShapeField geerbt.) | |
Equals | Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist. (Von Object geerbt.) | |
Finalize | Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird. (Von Object geerbt.) | |
FindFirstChild | Sucht das erste untergeordnete Shape-Feld im übergeordneten Shape-Feld. (Von ShapeField geerbt.) | |
FindLastChild | Sucht das letzte untergeordnete Shape-Feld im übergeordneten Shape-Feld. (Von ShapeField geerbt.) | |
FindNextChild | Sucht das nächste untergeordnete Shape-Feld im übergeordneten Shape-Feld. (Von ShapeField geerbt.) | |
FindNextInChildSubFields | Sucht das nächste untergeordnete Shape-Feld in der Navigationsreihenfolge. (Von ShapeField geerbt.) | |
FindPreviousChild | Sucht das vorherige untergeordnete Shape-Feld im übergeordneten Shape-Feld. (Von ShapeField geerbt.) | |
FindPreviousInChildSubFields | Sucht das vorherige untergeordnete Shape-Feld in der Navigationsreihenfolge. (Von ShapeField geerbt.) | |
Focused | Ruft das Feld "Form" ab und überprüft, ob es den Fokus besitzt. (Von ShapeField geerbt.) | |
GetAccessibilityObject | Ruft das Barrierefreiheit-Objekt ab, das dem Formfeld zugewiesen wird. (Von ShapeField geerbt.) | |
GetAccessibleChild | Ruft das Barrierefreiheit-Objekt für das untergeordnete Formfeld ab. (Von ShapeField geerbt.) | |
GetAccessibleChildCount | Ruft die Anzahl der Accessibility-Objekte (Barrierefreiheit) ab, die dem übergeordneten Formfeld und seinen untergeordneten Formfeldern zugewiesen werden. (Von ShapeField geerbt.) | |
GetAccessibleDefaultActionDescription | Ruft den Standardzweck des Formfelds für das zugreifbare Objekt ab. (Von ShapeField geerbt.) | |
GetAccessibleDescription | Gibt die standardmäßige zugreifbare Beschreibung für ein Image-Feld zurück. (Überschreibt ShapeField.GetAccessibleDescription(ShapeElement).) | |
GetAccessibleHelp | Ruft die Hilfe für das Feld "Form" des barrierefreien Objekts ab. (Von ShapeField geerbt.) | |
GetAccessibleHelpTopicFileName | Ruft ein Thema in der Hilfe für das barrierefreie Objekt ab. (Von ShapeField geerbt.) | |
GetAccessibleHelpTopicId | Ruft die ID ab, die dem Hilfethema zum verfügbaren Objekt zugewiesen ist. (Von ShapeField geerbt.) | |
GetAccessibleName | Gibt den standardmäßigen zugreifbaren Namen für ein Image-Feld zurück. (Überschreibt ShapeField.GetAccessibleName(ShapeElement).) | |
GetAccessibleRole | Ruft die zugreifbare Rolle von diesem ShapeField ab. (Überschreibt ShapeField.GetAccessibleRole(ShapeElement).) | |
GetAccessibleState | Ruft den Statun für das Formfeld für das verfügbare Objekt ab. (Von ShapeField geerbt.) | |
GetAccessibleValue | Ruft den Wert für das Formfeld für das verfügbare Objekt ab. (Von ShapeField geerbt.) | |
GetActiveInPlaceEditor | Ruft den direkten Editor ab, der aktiv ist. (Von ShapeField geerbt.) | |
GetBackgroundBrush | Ruft den Pinsel ab, der den Hintergrund für das Formelement zeichnet, dem dieses Formelement zugewiesen ist. (Von ShapeField geerbt.) | |
GetBackgroundBrushId | Ruft die ID des Pinsels ab, der den Hintergrund für das Formelement zeichnet, dem dieses Formfeld zugewiesen ist. (Von ShapeField geerbt.) | |
GetBounds | Ruft die Begrenzungen für das Formfeld ab. (Von ShapeField geerbt.) | |
GetCursor | Ruft den Zeiger ab, der angezeigt wird, wenn der Mauszeiger auf das Formfeld zeigt. (Von ShapeField geerbt.) | |
GetDisplayImage | Ruft das durch dieses Feld anzuzeigende Bild ab. | |
GetFocusable | Ruft das Feld "Form" ab und überprüft, ob es den Fokus erhalten kann. (Von ShapeField geerbt.) | |
GetHashCode | Fungiert als die Standardhashfunktion. (Von Object geerbt.) | |
GetInPlaceEditorBounds | Ruft die Begrenzungen für den direkten Editor ab. (Von ShapeField geerbt.) | |
GetMaximumInPlaceEditorSize | Ruft die maximalen Begrenzungen für den direkten Editor ab. (Von ShapeField geerbt.) | |
GetMinimumInPlaceEditorSize | Ruft die Mindestbegrenzungen für den direkten Editor ab. (Von ShapeField geerbt.) | |
GetMinimumSize | Gibt die minimale Größe von dem ImageField zurück. (Überschreibt ShapeField.GetMinimumSize(ShapeElement).) | |
GetPen | Ruft den Stift ab, mit dem das Formelement gezeichnet wird, dem das Formfeld zugewiesen ist. (Von ShapeField geerbt.) | |
GetPenId | Ruft die ID des Stifts ab, mit dem das Formelement gezeichnet wird, dem das Formfeld zugewiesen ist. (Von ShapeField geerbt.) | |
GetPotentialMouseAction | Ruft die Mausaktion ab, die aktiviert werden soll, wenn der Benutzer auf einen bestimmten Punkt im Diagramm klickt. (Von ShapeField geerbt.) | |
GetSelectable | Ruft das Feld "Form" ab und überprüft, ob es ausgewählt werden kann. (Von ShapeField geerbt.) | |
GetType | Ruft den Type der aktuellen Instanz ab. (Von Object geerbt.) | |
GetUnscaled | Ruft ab, ob das Symbol gezeichnet unskaliert sein sollen oder nicht. | |
GetValue | Ruft den Wert im Formfeld ab. (Von ShapeField geerbt.) | |
GetValueDomainPropertyInfo | Ruft die Domäneneigenschaft ab, die dem Wert im Formfeld zugewiesen wird. (Von ShapeField geerbt.) | |
GetVisible | Ruft das Feld "Form" ab und überprüft, ob er angezeigt wird. (Von ShapeField geerbt.) | |
HasFocusedAppearance | Ruft das Feld "Form" ab und überprüft, ob angezeigt werden soll, dass es den Fokus besitzt. (Von ShapeField geerbt.) | |
HasPendingEdit | Ruft das Feld "Form" ab und überprüft, ob das Feld als direkter Editor aktiv ist und eine Änderung aussteht. (Von ShapeField geerbt.) | |
HasSelectedAppearance | Ruft das Feld "Form" ab und überprüft, ob es ausgewählt wurde. (Von ShapeField geerbt.) | |
IsNavigationKey(Char) | Ruft den Schlüssel ab, der vom Benutzer gedrückt wurde, und überprüft, ob er verwendet werden kann, um zwischen Formfeldern zu navigieren. (Von ShapeField geerbt.) | |
IsNavigationKey(Keys) | Ruft die Schlüssel ab, die vom Benutzer gedrückt wurden, und überprüft, ob sie verwendet werden können, um zwischen Formfeldern zu navigieren. (Von ShapeField geerbt.) | |
MemberwiseClone | Erstellt eine flache Kopie des aktuellen Object. (Von Object geerbt.) | |
NavigateAscend | Verschiebt den Fokus zum vorherigen Formfeld in der Navigationsreihenfolge für die ausgewählten Formen. (Von ShapeField geerbt.) | |
NavigateDescend | Verschiebt den Fokus zum nächsten Formfeld in der Navigationsreihenfolge für die ausgewählten Formen. (Von ShapeField geerbt.) | |
NavigateToFirst | Verschiebt den Fokus zum ersten Formfeld in der Navigationsreihenfolge für die ausgewählten Formen. (Von ShapeField geerbt.) | |
NavigateToLast | Verschiebt den Fokus zum letzten Formfeld in der Navigationsreihenfolge für die ausgewählten Formen. (Von ShapeField geerbt.) | |
NavigateToNext | Verschiebt den Fokus zum nächsten Formfeld in der Navigationsreihenfolge für die ausgewählten Formen. (Von ShapeField geerbt.) | |
NavigateToPrevious | Verschiebt den Fokus zum vorherigen Formfeld in der Navigationsreihenfolge für die ausgewählten Formen. (Von ShapeField geerbt.) | |
OnBeginEdit | Alarmiert Listener, wenn die direkte Bearbeitung begonnen hat. (Von ShapeField geerbt.) | |
OnClick | Alarmiert Listener, wenn der Benutzer auf ein Formfeld geklickt hat. (Von ShapeField geerbt.) | |
OnDoubleClick | Alarmiert Listener, wenn der Benutzer auf ein Formfeld doppelt geklickt hat. (Von ShapeField geerbt.) | |
OnEndEdit | Alarmiert Listener, wenn die direkte Bearbeitung beendet ist. (Von ShapeField geerbt.) | |
OnKeyDown | Alarmiert Listener, wenn der Benutzer beim Zeigen auf ein Formfeld eine Taste gedrückt gehalten hat. (Von ShapeField geerbt.) | |
OnKeyPress | Alarmiert Listener, wenn der Benutzer beim Zeigen auf ein Formfeld eine Taste gedrückt gehalten hat. (Von ShapeField geerbt.) | |
OnKeyUp | Alarmiert Listener, wenn der Benutzer beim Zeigen auf ein Formfeld eine Taste losgelassen hat. (Von ShapeField geerbt.) | |
OnMouseDown | Alarmiert Listener, wenn der Benutzer den Mauszeiger über einem Formfeld hält. (Von ShapeField geerbt.) | |
OnMouseMove | Alarmiert Listener, wenn der Mauszeiger über ein Formfeld bewegt wurde. (Von ShapeField geerbt.) | |
OnMouseUp | Alarmiert Listener, wenn der Benutzer die Maustaste über einem Formfeld losgelassen hat. (Von ShapeField geerbt.) | |
OnMouseWheel | Alarmiert Listener, wenn der Mauszeiger über ein Formfeld kreisförmig bewegt wurde. (Von ShapeField geerbt.) | |
Selected | Ruft das Feld "Form" ab und überprüft, ob es ausgewählt ist. (Von ShapeField geerbt.) | |
SetSelectionRange | Legt die Auswahl auf einen Bereich von untergeordneten Formfeldern fest. (Von ShapeField geerbt.) | |
SetValue | Weist den angegebenen Wert einem Formfeld zu. (Von ShapeField geerbt.) | |
SetVisible | Legt die Sichtbarkeit des Formfelds fest. (Von ShapeField geerbt.) | |
ToString | Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.) |
Zum Seitenanfang
Hinweise
Wenn Sie in einem Formular ein Decorator-Bildelement definieren und Sie definieren, eine Bildform, der Bereich, in dem die Form angezeigt wird, durch ein ImageField verwaltet werden. Beispiele für die Initialisierung von ImageFields und anderen ShapeFields, überprüfen Sie Dsl\GeneratedCode\Shapes.cs in der DSL-Projektmappe.
Ein ImageField ist ein Objekt, das einen Bereich in einer Form verwaltet, z des Abstands, das einem Decorator- zugewiesen wird. Eine ImageField-Instanz wird zwischen vielen Formen der gleichen Formklasse freigegeben. Die ImageField-Instanz speichert kein separates Bild für jede Form: Stattdessen hat die GetDisplayImage(ShapeElement)-Methode die Form als Parameter und kann das Bildabhängige sich auf den aktuellen Zustand der Form und ihres Namens gesucht wird.
Bei besonderen Verhalten wie ein variables Bild möchten, können Sie eine eigene Klasse erstellen, die von ImageField abgeleitet wird.
So eine Unterklasse von ImageField erstellen
Legen Sie die Eigenschaft Generiert abgeleitetes Double der übergeordneten Form in der DSL-Definition fest.
Überschreiben Sie die InitializeShapeFields-Methode der Formklasse.
- Erstellen Sie eine neue Codedatei im DSL-Projekt, und schreiben Sie eine partielle Klasse für die Formklasse. Überschreiben Sie die Methodendefinition vorhanden.
Überprüfen Sie den Code von InitializeShapeFields in DSL\GeneratedCode\Shapes.cs.
In Ihrer Überschreibungsmethode rufen Sie die Basismethode auf und erstellen Sie dann eine Instanz Ihrer eigenen Bildfeldklasse. Verwenden Sie diese, um das reguläre Bildfeld in der Liste shapeFields zu ersetzen.
Beispiele
In diesem Beispiel wird eine Symboländerung abhängig vom Zustand des Modellelements der Form vorgenommen.
Warnung
Dieses Beispiel zeigt, wie ein Decorator- des dynamischen Bilds macht.Aber, wenn Sie nur zwischen einem oder zwei Bilder abhängig vom Zustand einer Hierarchie Variable wechseln möchten, ist es einfacher, mehrere Bilddecorator-elemente erstellen, sucht diese in derselben Position auf der Form und anschließend den Sichtbarkeitsfilter fest, um aus bestimmten Werten der Hierarchie Variable abhängig ist.Um den Filter festlegen, die Formzuordnung in der DSL-Definition auswählen, das DSL-Detailfenster öffnen, und auf die Decorator-Element-Registerkarte klicken.
Um diesen Beispielcode auszuführen, erstellen Sie eine neue DSL-Projektmappe mit minimalen Sprachvorlage. Fügen Sie einer Domäneneigenschaft AlternateState von booleschen Werts der ExampleElement-Domänenklasse hinzu. Fügen Sie einem Symboldecorator-element der ExampleShape-Klasse hinzu, und legen Sie das Bild auf eine Bitmapdatei fest. Klicken Sie auf Alle Vorlagen transformieren. Fügen Sie eine neue Codedatei im DSL-Projekt hinzu, und fügen Sie den folgenden Code ein.
Um den Code zu testen, drücken, und Sie in die Debuggingsprojektmappe F5, ein Beispieldiagramm. Der Standardzustand des Symbols wird angezeigt. Wählen Sie die Form, und ändern Sie im Eigenschaftenfenster den Wert der Eigenschaft AlternateState aus. Das Symbol sollte gedreht um 90 Grad, auf dieser Form dann aussehen.
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;
}
}
}
}
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.