Klasa ImageField
Lekkie obiekt, który stanowi część kształtu, który może wyświetlać obraz dekoratorów lub tła.
Hierarchia dziedziczenia
System.Object
Microsoft.VisualStudio.Modeling.Diagrams.ShapeField
Microsoft.VisualStudio.Modeling.Diagrams.ImageField
Przestrzeń nazw: Microsoft.VisualStudio.Modeling.Diagrams
Zestaw: Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0 (w Microsoft.VisualStudio.Modeling.Sdk.Diagrams.12.0.dll)
Składnia
'Deklaracja
Public Class ImageField _
Inherits ShapeField
public class ImageField : ShapeField
Typ ImageField uwidacznia następujące elementy członkowskie.
Konstruktorzy
Nazwa | Opis | |
---|---|---|
ImageField(String) | Inicjuje nowe wystąpienie klasy ImageField. | |
ImageField(String, Image) | Inicjuje nowe wystąpienie klasy ImageField. |
Początek
Właściwości
Nazwa | Opis | |
---|---|---|
AnchoringBehavior | W tym artykule opisano, jak zawartość pola należy położenia i rozmiaru sobie w stosunku do nadrzędnego ShapeElement. (Odziedziczone z ShapeField). | |
DefaultAccessibleDescription | Zwraca lub ustawia domyślny opis dostępne. (Odziedziczone z ShapeField). | |
DefaultAccessibleName | Zwraca lub ustawia domyślną nazwę pola kształtu dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
DefaultAccessibleState | Pobiera stan domyślny pola kształtu dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
DefaultBackgroundBrushId | Zwraca lub ustawia identyfikator domyślnego pędzla do malowania tło pola kształtu. (Odziedziczone z ShapeField). | |
DefaultFocusable | Pobiera pola kształtu i weryfikuje, czy może być ustawiony fokus, lub daje możliwość fokus w polu kształt. (Odziedziczone z ShapeField). | |
DefaultImage | Zwraca lub ustawia domyślny obraz skojarzony z tym ImageField.Domyślny obraz można dostosować w taki sposób, poprzez zastąpienie metody GetDisplayImage. | |
DefaultInactiveSelectedBackgroundBrushId | Zwraca lub ustawia identyfikator pędzla tło domyślne, w polu kształtu. (Odziedziczone z ShapeField). | |
DefaultPenId | Pobiera lub ustawia identyfikator pióro domyślną w polu kształt. (Odziedziczone z ShapeField). | |
DefaultReflectParentFocusedState | Pobiera dziecka kształtu pole i sprawdza, czy klient powinien otrzymać fokus podczas jej kształtu nadrzędnego uzyskuje fokus lub ustawia możliwość odzwierciedlają stan aktywny jej kształtu nadrzędnego. (Odziedziczone z ShapeField). | |
DefaultReflectParentSelectedState | Pobiera dziecka kształtu pole i sprawdza, czy powinien zostać wybrany, gdy jej kształtu nadrzędnego jest zaznaczona lub ustawia możliwość odzwierciedlają stan zaznaczenia kształtu nadrzędnego. (Odziedziczone z ShapeField). | |
DefaultSelectable | Pobiera pola kształtu i sprawdza, czy można wybierać domyślne lub ustawia domyślny stan zaznaczenia pola kształtu. (Odziedziczone z ShapeField). | |
DefaultSelectedBackgroundBrushId | Zwraca lub ustawia identyfikator pędzla tło domyślne, w polu kształtu. (Odziedziczone z ShapeField). | |
DefaultUnscaled | Pobiera lub ustawia, czy obraz należy wyciągnąć nieskalowanej w odniesieniu do granic tego pola lub obraz powinien być skalowany w celu dopasowania granice. | |
DefaultVisibility | Pobiera pola kształtu i weryfikuje, czy pojawia się domyślnie lub ustawia domyślną widoczność pola kształtu. (Odziedziczone z ShapeField). | |
Name | Pobiera nazwę pola kształtu. (Odziedziczone z ShapeField). |
Początek
Metody
Nazwa | Opis | |
---|---|---|
AccessibleDoDefaultAction | Wykonuje akcję domyślnego dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
AllowInPlaceEditorAutoSize | Włącza się automatycznie wielkości w polu kształt w edytorze w miejscu. (Odziedziczone z ShapeField). | |
AssociateValueWith(Store, AssociatedPropertyInfo) | Kojarzy pole kształtu z właściwością domeny, która jest przypisana do elementu kształtu. (Odziedziczone z ShapeField). | |
AssociateValueWith(Store, Guid) | Kojarzy pole kształtu z właściwością domeny, która jest przypisana do elementu kształtu. (Odziedziczone z ShapeField). | |
AssociateValueWith(Store, Guid, AssociatedPropertyInfo) | Kojarzy pole kształtu z właściwością domeny, która jest przypisana do elementu kształtu. (Odziedziczone z ShapeField). | |
AssociateVisibilityWith(Store, AssociatedPropertyInfo) | Kojarzy widoczność pola kształtu z właściwością domeny, która jest przypisana do elementu kształtu. (Odziedziczone z ShapeField). | |
AssociateVisibilityWith(Store, Guid) | Kojarzy widoczność pola kształtu z właściwością domeny, która jest przypisana do elementu kształtu. (Odziedziczone z ShapeField). | |
AssociateVisibilityWith(Store, Guid, AssociatedPropertyInfo) | Kojarzy widoczność pola kształtu z właściwością domeny, która jest przypisana do elementu kształtu. (Odziedziczone z ShapeField). | |
CanEditValue | Pobiera pola kształtu i sprawdza, czy może być edytowana. (Odziedziczone z ShapeField). | |
CommitPendingEdit | Przydziela Edycja oczekujące. (Odziedziczone z ShapeField). | |
DoHitTest | Wykonuje test trafień określonego punktu na diagramie, aby ustalić, czy punkt znajduje się w obwiedni pola kształtu. (Odziedziczone z ShapeField). | |
DoKeyboardNavigation | Nawiguje w polu kształtu za pomocą klawiatury. (Odziedziczone z ShapeField). | |
DoPaint | Rysuje zawartość ShapeField. (Zastępuje ShapeField.DoPaint(DiagramPaintEventArgs, ShapeElement)). | |
EditValue(ShapeElement, DiagramClientView) | Otwiera edytor w miejscu, w polu kształtu. (Odziedziczone z ShapeField). | |
EditValue(ShapeElement, DiagramClientView, PointD) | Otwiera edytor w miejscu, w polu kształtu. (Odziedziczone z ShapeField). | |
Equals | Określa, czy określony obiekt jest równy bieżącemu obiektowi. (Odziedziczone z Object). | |
Finalize | Umożliwia obiekt spróbuj zwolnić zasoby i wykonywania innych operacji oczyszczania przed jest odzyskane w procesie wyrzucania elementów bezużytecznych. (Odziedziczone z Object). | |
FindFirstChild | Lokalizuje pierwsze pole podrzędne kształtu w polu kształtu nadrzędnego. (Odziedziczone z ShapeField). | |
FindLastChild | Lokalizuje ostatnie pole podrzędne kształtu w polu kształtu nadrzędnego. (Odziedziczone z ShapeField). | |
FindNextChild | Lokalizuje następne pole podrzędne kształtu w polu kształtu nadrzędnego. (Odziedziczone z ShapeField). | |
FindNextInChildSubFields | Lokalizuje następne pole kształt podrzędny w sekwencji nawigacji. (Odziedziczone z ShapeField). | |
FindPreviousChild | Lokalizuje poprzedniego pola podrzędne kształtu w polu kształtu nadrzędnego. (Odziedziczone z ShapeField). | |
FindPreviousInChildSubFields | Lokalizuje poprzednie pole kształt podrzędny w sekwencji nawigacji. (Odziedziczone z ShapeField). | |
Focused | Pobiera pola kształtu i sprawdza, czy ma ona fokus. (Odziedziczone z ShapeField). | |
GetAccessibilityObject | Pobiera obiekt ułatwień dostępu, który jest przypisany do pola kształtu. (Odziedziczone z ShapeField). | |
GetAccessibleChild | Pobiera obiekt dostępności dla pola podrzędne kształtu. (Odziedziczone z ShapeField). | |
GetAccessibleChildCount | Zwraca liczbę obiektów ułatwień dostępu, które są przypisane do pola nadrzędnego kształtu i jego podrzędne pola łączące kształtu. (Odziedziczone z ShapeField). | |
GetAccessibleDefaultActionDescription | Pobiera domyślnego celu pole kształtu dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
GetAccessibleDescription | Zwraca domyślny opis dostępne dla pola obrazu. (Zastępuje ShapeField.GetAccessibleDescription(ShapeElement)). | |
GetAccessibleHelp | Pobiera pola kształtu pomocy dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
GetAccessibleHelpTopicFileName | Pobiera tematu pomocy dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
GetAccessibleHelpTopicId | Pobiera identyfikator przypisany do tematu pomocy dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
GetAccessibleName | Zwraca nazwę dostępne domyślną dla pola obrazu. (Zastępuje ShapeField.GetAccessibleName(ShapeElement)). | |
GetAccessibleRole | Pobiera dostępne rolę tego ShapeField. (Zastępuje ShapeField.GetAccessibleRole(ShapeElement)). | |
GetAccessibleState | Pobiera stan pola kształtu dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
GetAccessibleValue | Pobiera wartość w polu kształt dla dostępnego obiektu. (Odziedziczone z ShapeField). | |
GetActiveInPlaceEditor | Pobiera edytora w miejscu, który jest aktywny. (Odziedziczone z ShapeField). | |
GetBackgroundBrush | Pobiera pędzla, która rysuje tła dla elementu kształtu, do której przypisany jest to pole kształtu. (Odziedziczone z ShapeField). | |
GetBackgroundBrushId | Pobiera identyfikator pędzla, która rysuje tła dla elementu kształtu, do której przypisany jest to pole kształtu. (Odziedziczone z ShapeField). | |
GetBounds | Pobiera granice, w polu kształtu. (Odziedziczone z ShapeField). | |
GetCursor | Pobiera wskaźnik, który pojawia się, gdy myszą w polu kształt. (Odziedziczone z ShapeField). | |
GetDisplayImage | Pobiera obrazu, które mają być wyświetlane według tego pola. | |
GetFocusable | Pobiera pola kształtu i sprawdza, czy może odbierać fokus. (Odziedziczone z ShapeField). | |
GetHashCode | Służy jako domyślnej funkcji mieszania. (Odziedziczone z Object). | |
GetInPlaceEditorBounds | Pobiera granice dla edytora w miejscu. (Odziedziczone z ShapeField). | |
GetMaximumInPlaceEditorSize | Pobiera maksymalne granice dla edytora w miejscu. (Odziedziczone z ShapeField). | |
GetMinimumInPlaceEditorSize | Pobiera minimalne granice dla edytora w miejscu. (Odziedziczone z ShapeField). | |
GetMinimumSize | Zwraca minimalną wielkość ImageField. (Zastępuje ShapeField.GetMinimumSize(ShapeElement)). | |
GetPen | Pobiera Pióro rysuje element kształtu, do którego przypisano pola kształtu. (Odziedziczone z ShapeField). | |
GetPenId | Pobiera identyfikator Pióro rysuje element kształtu, do którego przypisano pola kształtu. (Odziedziczone z ShapeField). | |
GetPotentialMouseAction | Pobiera działania myszy Uaktywnij, gdy użytkownik kliknie przycisk Następny określonego punktu na diagramie. (Odziedziczone z ShapeField). | |
GetSelectable | Pobiera pola kształtu i sprawdza, czy może być zaznaczony. (Odziedziczone z ShapeField). | |
GetType | Pobiera Type bieżącego wystąpienia. (Odziedziczone z Object). | |
GetUnscaled | Pobiera obraz powinny być pobierane nieskalowanej lub nie. | |
GetValue | Pobiera wartość w polu kształt. (Odziedziczone z ShapeField). | |
GetValueDomainPropertyInfo | Pobiera właściwość domeny, która jest przypisana do wartości w polu kształt. (Odziedziczone z ShapeField). | |
GetVisible | Pobiera pola kształtu i sprawdza, czy pojawia się. (Odziedziczone z ShapeField). | |
HasFocusedAppearance | Pobiera pola kształtu i sprawdza, czy mają być wyświetlane ma fokus. (Odziedziczone z ShapeField). | |
HasPendingEdit | Pobiera pola kształtu i sprawdza, czy jego edytora w miejsce jest aktywny i zmiana jest w stanie oczekiwania. (Odziedziczone z ShapeField). | |
HasSelectedAppearance | Pobiera pola kształtu i sprawdza, czy wydaje się być zaznaczone. (Odziedziczone z ShapeField). | |
IsNavigationKey(Char) | Pobiera klucz, który użytkownik naciśnięcia i sprawdza, czy może służyć do nawigacji między polami kształtu. (Odziedziczone z ShapeField). | |
IsNavigationKey(Keys) | Pobiera klucze, które użytkownik naciśnięcia i sprawdza, czy one mogą być używane do nawigacji między polami kształtu. (Odziedziczone z ShapeField). | |
MemberwiseClone | Tworzy kopię płytkie bieżące Object. (Odziedziczone z Object). | |
NavigateAscend | Przenosi fokus do poprzedniego pola kształtu w sekwencji nawigacji dla zaznaczonych kształtów. (Odziedziczone z ShapeField). | |
NavigateDescend | Przenosi fokus do następnego pola kształtu w sekwencji nawigacji dla zaznaczonych kształtów. (Odziedziczone z ShapeField). | |
NavigateToFirst | Przenosi fokus do pierwszego pola kształtu w sekwencji nawigacji dla zaznaczonych kształtów. (Odziedziczone z ShapeField). | |
NavigateToLast | Przeniesienie fokusu z ostatniego pola kształtu w sekwencji nawigacji dla zaznaczonych kształtów. (Odziedziczone z ShapeField). | |
NavigateToNext | Przenosi fokus do następnego pola kształtu w sekwencji nawigacji dla zaznaczonych kształtów. (Odziedziczone z ShapeField). | |
NavigateToPrevious | Przenosi fokus do poprzedniego pola kształtu w sekwencji nawigacji dla zaznaczonych kształtów. (Odziedziczone z ShapeField). | |
OnBeginEdit | Detektory alertów podczas edycji w miejscu został rozpoczęty. (Odziedziczone z ShapeField). | |
OnClick | Detektory alerty, gdy użytkownik kliknie pole kształtu. (Odziedziczone z ShapeField). | |
OnDoubleClick | Detektory alerty, gdy użytkownik został kliknięty dwukrotnie w polu kształt. (Odziedziczone z ShapeField). | |
OnEndEdit | Detektory alerty po zakończeniu edycji na miejscu. (Odziedziczone z ShapeField). | |
OnKeyDown | Detektory alerty użytkownika ma przytrzymanie wciśniętego klawisza po wskazaniu pola kształtu. (Odziedziczone z ShapeField). | |
OnKeyPress | Detektory alerty, gdy użytkownik nacisnął klawisz po wskazaniu pola kształtu. (Odziedziczone z ShapeField). | |
OnKeyUp | Detektory alerty, gdy użytkownik wydała klucz po wskazaniu pola kształtu. (Odziedziczone z ShapeField). | |
OnMouseDown | Detektory alerty, gdy użytkownik trzyma naciśnięty przycisk myszy nad polem kształtu. (Odziedziczone z ShapeField). | |
OnMouseMove | Detektory alerty, gdy mysz nad polem kształt został przeniesiony. (Odziedziczone z ShapeField). | |
OnMouseUp | Detektory alerty, gdy użytkownik wydała przycisku myszy nad polem kształtu. (Odziedziczone z ShapeField). | |
OnMouseWheel | Detektory alerty, gdy wskaźnik myszy nad polem kształt został obrócony. (Odziedziczone z ShapeField). | |
Selected | Pobiera pola kształtu i sprawdza, czy jest zaznaczone. (Odziedziczone z ShapeField). | |
SetSelectionRange | Ustawia zakres podrzędne pola łączące kształtu zaznaczenia. (Odziedziczone z ShapeField). | |
SetValue | Przypisuje wartość określonego pola kształtu. (Odziedziczone z ShapeField). | |
SetVisible | Określa widoczność pola kształtu. (Odziedziczone z ShapeField). | |
ToString | Zwraca ciąg, który reprezentuje bieżący obiekt. (Odziedziczone z Object). |
Początek
Uwagi
Podczas definiowania dekorator obrazu w kształcie i zdefiniować kształt obrazu, obszar, w którym kształt jest wyświetlany jest zarządzany przez ImageField.Przykłady inicjowania ImageFields i innych ShapeFields należy sprawdzić Dsl\GeneratedCode\Shapes.cs w rozwiązaniu DSL.
ImageField jest obiektem, który zarządza obszaru w obrębie kształtu, takie jak miejsce na przypisane do dekorator.Jedno wystąpienie ImageField jest współużytkowane przez wiele kształtów z tej samej klasy shape.Wystąpienie ImageField nie przechowuje oddzielnych obrazu dla każdego kształtu: zamiast, GetDisplayImage(ShapeElement) metoda przyjmuje kształt jako parametr i można wyszukać obraz zależne od bieżącego stanu kształtu i jego elementu modelu.
Szczególne działanie, takie jak obraz zmiennej, należy można utworzyć własną klasę pochodną ImageField.
Aby utworzyć podklasę klasy ImageField
Ustaw Generuje podwójne uzyskane właściwości klasy kształtu nadrzędnego w Państwa definicji DSL.
Zastąpić InitializeShapeFields metody klasy shape.
- Utwórz nowy plik kodu w programie project DSL i zapisać definicji częściowej klasy dla klasy shape.Zastąpić w definicji metody.
Sprawdź kod InitializeShapeFields w DSL\GeneratedCode\Shapes.cs.
W sieci metoda przesłaniająca wywołanie metody podstawowej, a następnie utworzyć instancję klasy pole własny obraz.Służy do Zastąp pole regularnych obrazu w shapeFields listy.
Przykłady
W tym przykładzie sprawia, że ikona Zmień zależnych od stanu elementu modelu kształtu.
Przestroga |
---|
Ten przykład demonstruje, jak dokonać dekorator dynamiczny obraz.Ale jeśli chcesz przełączyć się z jednego lub dwóch obrazów, w zależności od stanu zmiennej modelu, jest prostsze utworzyć kilka dekoratorów obrazu, je zlokalizować w tym samym położeniu na kształt, a następnie ustaw widoczność filtra zależy od konkretnych wartości zmiennej modelu.Aby ustawić ten filtr, wybierz mapę kształt w definicji DSL, Otwórz okno Szczegóły DSL i kliknij kartę dekoratorów. |
Aby uruchomić ten przykład kodu, należy utworzyć nowe rozwiązanie DSL, przy użyciu szablonu minimalne języka.Dodaj właściwość logiczna domeny AlternateState do klasy ExampleElement domeny.Dodać ikonę dekorator do klasy ExampleShape i ustaw jego obraz do pliku mapy bitowej.Kliknij przycisk Transform wszystkie szablony.Dodawanie nowego pliku kodu w programie project DSL i wstawić następujący kod.
Aby przetestować kod, naciśnij klawisz F5, a w roztworze debugowania, Otwórz przykładowy diagram.Domyślny stan ikony powinny być widoczne.Zaznacz kształt, a następnie w oknie Właściwości zmień wartość AlternateState właściwości.Ikona pojawia się obrócone do 90 stopni, w tym kształcie.
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;
}
}
}
}
Bezpieczeństwo wątku
Wszystkie publiczne static (Shared w języku Visual Basic) elementy członkowskie tego typu są bezpieczne dla wątków. Wystąpienia elementów członkowskich nie dają gwarancji bezpieczeństwa wątków.