Freigeben über


Visual Klasse

Definition

Stellt Renderingunterstützung in WPF bereit, einschließlich Treffertests, Koordinatentransformation und Berechnen umgebender Felder.

public ref class Visual abstract : System::Windows::DependencyObject
public abstract class Visual : System.Windows.DependencyObject
type Visual = class
    inherit DependencyObject
    interface DUCE.IResource
type Visual = class
    inherit DependencyObject
Public MustInherit Class Visual
Inherits DependencyObject
Vererbung
Abgeleitet

Hinweise

Die Visual-Klasse ist die grundlegende Abstraktion, von der alle FrameworkElement-Objekte abgeleitet werden. Es dient auch als Einstiegspunkt für das Schreiben neuer Steuerelemente in WPF und kann in vielerlei Hinsicht als Äquivalent eines Fensterhandles (HWND) im Win32-Anwendungsmodell betrachtet werden.

Das Visual-Objekt ist ein zentrales WPF-Objekt, dessen primäre Rolle die Unterstützung des Rendering ist. Benutzeroberflächensteuerelemente wie Button und TextBoxwerden von der Visual -Klasse abgeleitet und verwenden die Visual definierten Eigenschaften zum Beibehalten der Renderingdaten. Das Visual -Objekt bietet Unterstützung für Folgendes:

  • Ausgabeanzeige: Rendern des persistenten, serialisierten Zeichnungsinhalts eines visuellen Objekts.

  • Transformationen: Ausführen von Transformationen auf einem visuellen Objekt.

  • Clipping: Bereitstellen der Clippingbereichsunterstützung für ein visuelles Objekt.

  • Treffertests: Bestimmt, ob eine angegebene Koordinate (Punkt) oder Geometrie innerhalb der Grenzen eines Visuals enthalten ist.

  • Berechnungen des Begrenzungsrahmens: Bestimmen des umschließenden Rechtecks eines visuellen Objekts.

Architektonisch umfasst das Visual Objekt keine Unterstützung für andere Anwendungsentwicklungsanforderungen/WPF-Features, die nicht unmittelbar mit dem Rendering zusammenhängen, z. B. die folgenden:

  • Ereignisbehandlung

  • Layout

  • Stile

  • Datenbindung

  • Globalisierung

Visual wird als öffentliche abstrakte Klasse bereitgestellt, von der weitere Klassen abgeleitet werden können. Die folgende Abbildung zeigt die Hierarchie der vorhandenen visuellen Objekte, die in der WPF-Architektur definiert sind.

Diagramm der vom visual-Objekt abgeleiteten Klassen
Klassenhierarchie von visuellen Objekten

In einigen Fällen werden Member, die als geschützt in Visual definiert sind, als leichter zugängliche Member mit ähnlichen Namen in der abgeleiteten UIElement Klasse verfügbar gemacht.

Weitere Informationen finden Sie unter Übersicht über das WPF-Grafikenrendering.

Ein Visual verfügt über eine begrenzte Anzahl von Ebenen. In früheren Versionen des .NET Framework betrug diese maximale Tiefe 255. Dieser Grenzwert ist für einige Layouts, die viele Ebenen in der visuellen Struktur aufweisen, unzureichend.

In .NET Framework 4 beträgt die maximale Tiefe von Visual 2047, was viel tiefere visuelle Strukturen ermöglicht. In den meisten Anwendungen ist nicht genügend Stapelspeicherplatz vorhanden, um so viele Ebenen zu durchlaufen, und das Ergebnis ist ein StackOverflowException während des Layouts. Bei der Standardstapelgröße wird diese Ausnahme normalerweise ausgelöst, wenn die Strukturtiefe etwa 800 beträgt, was etwa 190 geschachtelten TreeViewItem Objekten entspricht.

Wenn diese Ausnahme von Ihrer Anwendung ausgelöst wird und Sie eine tiefere visuelle Struktur benötigen, können Sie die Stapelgröße der Anwendung erhöhen. Sie können die Größe des Stapels erhöhen, indem Sie die Option /STACK zur Kompilierzeit oder das EDITBIN-Hilfsprogramm verwenden. Das Erhöhen der Stapelgröße kann sich auf die Leistung Ihrer Anwendung auswirken. Weitere Informationen finden Sie unter Stapelzuordnungen und EDITBIN-Optionen.

Konstruktoren

Visual()

Stellt die Basisinitialisierung für von der Visual-Klasse abgeleitete Objekte bereit.

Eigenschaften

DependencyObjectType

Ruft den ab, der DependencyObjectType den CLR-Typ dieser Instanz umschließt.

(Geerbt von DependencyObject)
Dispatcher

Ruft den Dispatcher ab, der diesem DispatcherObject zugeordnet ist.

(Geerbt von DispatcherObject)
IsSealed

Ruft einen Wert ab, der angibt, ob diese Instanz derzeit versiegelt (schreibgeschützt) ist.

(Geerbt von DependencyObject)
VisualBitmapEffect
Veraltet.
Veraltet.

Ruft den BitmapEffect-Wert für das Visual ab oder legt diesen fest.

VisualBitmapEffectInput
Veraltet.
Veraltet.

Ruft den BitmapEffectInput-Wert für das Visual ab oder legt diesen fest.

VisualBitmapScalingMode

Ruft die BitmapScalingMode für den Visual ab oder legt diese fest.

VisualCacheMode

Ruft eine zwischengespeicherte Darstellung des Visual ab oder legt diese fest.

VisualChildrenCount

Ruft die Anzahl untergeordneter Elemente für das Visual ab.

VisualClearTypeHint

Ruft die ClearTypeHint ab, die bestimmt, wie ClearType im Visual dargestellt wird.

VisualClip

Ruft den Ausschneidebereich des Visual als Geometry-Wert ab oder legt diesen fest.

VisualEdgeMode

Ruft den Randmodus des Visual als EdgeMode-Wert ab oder legt diesen fest.

VisualEffect

Ruft den Bitmapeffekt ab, der auf das Visual-Objekt angewendet werden soll, oder legt ihn fest.

VisualOffset

Ruft den Offsetwert des visuellen Objekts ab oder legt diesen fest.

VisualOpacity

Ruft die Durchlässigkeit des Visual ab oder legt diese fest.

VisualOpacityMask

Ruft den Brush-Wert ab, der die Durchlässigkeitsmaske des Visual darstellt, oder legt diesen fest.

VisualParent

Ruft das übergeordnete visuelle Strukturelement vom visuellen Objekt ab.

VisualScrollableAreaClip

Ruft einen abgeschnittenen bildlauffähigen Bereich für das Visual-Objekt ab oder legt diesen fest.

VisualTextHintingMode

Ruft den TextHintingMode von Visual ab oder legt ihn fest.

VisualTextRenderingMode

Ruft den TextRenderingMode von Visual ab oder legt ihn fest.

VisualTransform

Ruft den Transform-Wert für das Visual ab oder legt diesen fest.

VisualXSnappingGuidelines

Ruft die (vertikale) x-Koordinatenführungslinien-Auflistung ab oder legt diese fest.

VisualYSnappingGuidelines

Ruft die (horizontale) y-Koordinatenführungslinien-Auflistung ab oder legt diese fest.

Methoden

AddVisualChild(Visual)

Definiert die hierarchische Beziehung zwischen zwei visuellen Elementen.

CheckAccess()

Bestimmt, ob der aufrufende Thread auf dieses DispatcherObject zugreifen kann.

(Geerbt von DispatcherObject)
ClearValue(DependencyProperty)

Löscht den lokalen Wert einer Eigenschaft. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyProperty-Bezeichner angegeben.

(Geerbt von DependencyObject)
ClearValue(DependencyPropertyKey)

Löscht den lokalen Wert einer schreibgeschützten Eigenschaft. Die Eigenschaft, deren Wert gelöscht werden soll, wird durch einen DependencyPropertyKey angegeben.

(Geerbt von DependencyObject)
CoerceValue(DependencyProperty)

Erzwingt den Wert der angegebenen Abhängigkeitseigenschaft. Dies erfolgt durch den Aufruf einer beliebigen CoerceValueCallback-Funktion, die in den Metadaten für die Abhängigkeitseigenschaft angegeben ist, während sie beim aufrufenden DependencyObject beendet wird.

(Geerbt von DependencyObject)
Equals(Object)

Bestimmt, ob ein angegebenes DependencyObject dem aktuellen DependencyObject entspricht.

(Geerbt von DependencyObject)
FindCommonVisualAncestor(DependencyObject)

Gibt den gemeinsamen Vorgänger zweier visueller Objekte zurück.

GetHashCode()

Ruft einen Hashcode für diese DependencyObject ab.

(Geerbt von DependencyObject)
GetLocalValueEnumerator()

Erstellt einen spezialisierten Enumerator, mit dem bestimmt wird, welche Abhängigkeitseigenschaften dieses DependencyObject über lokal festgelegte Werte verfügen.

(Geerbt von DependencyObject)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
GetValue(DependencyProperty)

Gibt den aktuellen effektiven Wert einer Abhängigkeitseigenschaft für diese Instanz eines DependencyObject zurück.

(Geerbt von DependencyObject)
GetVisualChild(Int32)

Gibt das angegebene Visual in der übergeordneten VisualCollection zurück.

HitTestCore(GeometryHitTestParameters)

Bestimmt, ob sich ein Geometriewert innerhalb der Grenzen des visuellen Objekts befindet.

HitTestCore(PointHitTestParameters)

Bestimmt, ob sich ein Punktkoordinatenwert innerhalb der Grenzen des visuellen Objekts befindet.

InvalidateProperty(DependencyProperty)

Wertet den effektiven Wert für die angegebene Abhängigkeitseigenschaft erneut aus.

(Geerbt von DependencyObject)
IsAncestorOf(DependencyObject)

Bestimmt, ob das visuelle Objekt ein Vorgänger des visuellen Nachfolgerobjekts ist.

IsDescendantOf(DependencyObject)

Bestimmt, ob das visuelle Objekt ein Nachfolger des visuellen Vorgängerobjekts ist.

MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OnDpiChanged(DpiScale, DpiScale)

Wird aufgerufen, wenn sich der DPI-Wert ändert, mit dem diese Ansicht gerendert wird.

OnPropertyChanged(DependencyPropertyChangedEventArgs)

Wird immer dann aufgerufen, wenn der effektive Wert einer Abhängigkeitseigenschaft für dieses DependencyObject aktualisiert wurde. Welche spezifische Abhängigkeitseigenschaft geändert wird, wird in den Ereignisdaten gemeldet.

(Geerbt von DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

Wird aufgerufen, wenn die VisualCollection des visuellen Objekts geändert wurde.

OnVisualParentChanged(DependencyObject)

Wird aufgerufen, wenn das übergeordnete Element des visuellen Objekts geändert wird.

PointFromScreen(Point)

Konvertiert einen in Bildschirmkoordinaten angegebenen Point in einen Point, der das aktuelle Koordinatensystem des Visual darstellt.

PointToScreen(Point)

Konvertiert einen Point, der das aktuelle Koordinatensystem des Visual darstellt, in einen in Bildschirmkoordinaten angegebenen Point.

ReadLocalValue(DependencyProperty)

Gibt den lokalen Wert einer Abhängigkeitseigenschaft zurück, wenn dieser vorhanden ist.

(Geerbt von DependencyObject)
RemoveVisualChild(Visual)

Entfernt die hierarchische Beziehung zwischen zwei visuellen Elementen.

SetCurrentValue(DependencyProperty, Object)

Legt den Wert einer Abhängigkeitseigenschaft fest, ohne deren Wertquelle zu ändern.

(Geerbt von DependencyObject)
SetValue(DependencyProperty, Object)

Legt den lokalen Wert einer Abhängigkeitseigenschaft fest, die durch ihren Bezeichner angegeben ist.

(Geerbt von DependencyObject)
SetValue(DependencyPropertyKey, Object)

Legt den lokalen Wert einer schreibgeschützten Abhängigkeitseigenschaft fest, die durch den DependencyPropertyKey-Bezeichner der Abhängigkeitseigenschaft angegeben ist.

(Geerbt von DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Gibt einen Wert zurück, der angibt, ob Serialisierungsprozesse den Wert der bereitgestellten Abhängigkeitseigenschaft serialisieren sollen.

(Geerbt von DependencyObject)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
TransformToAncestor(Visual)

Gibt eine Transformation zurück, mit der Koordinaten des Visual in den Visual-Vorgänger des visuellen Objekts transformiert werden können.

TransformToAncestor(Visual3D)

Gibt eine Transformation zurück, mit der Koordinaten des Visual in den Visual3D-Vorgänger des visuellen Objekts transformiert werden können.

TransformToDescendant(Visual)

Gibt eine Transformation zurück, mit der Koordinaten des Visual in den angegebenen Nachfolger des visuellen Objekts transformiert werden können.

TransformToVisual(Visual)

Gibt eine Transformation zurück, mit der Koordinaten des Visual in das angegebene visuelle Objekt transformiert werden können.

VerifyAccess()

Erzwingt, dass der aufrufende Thread auf dieses DispatcherObject zugreifen kann.

(Geerbt von DispatcherObject)

Gilt für:

Weitere Informationen