Visual Třída

Definice

Poskytuje podporu vykreslování v subsystému WPF, která zahrnuje testování přístupů, transformaci souřadnic a výpočty ohraničovacího boxu.Provides rendering support in WPF, which includes hit testing, coordinate transformation, and bounding box calculations.

public ref class Visual abstract : System::Windows::DependencyObject
public abstract class Visual : System.Windows.DependencyObject
type Visual = class
    inherit DependencyObject
type Visual = class
    inherit DependencyObject
    interface DUCE.IResource
Public MustInherit Class Visual
Inherits DependencyObject
Dědičnost
Odvozené

Poznámky

VisualTřída je základní abstrakcí, ze které jsou FrameworkElement odvozeny všechny objekty.The Visual class is the basic abstraction from which every FrameworkElement object derives. Slouží také jako vstupní bod pro zápis nových ovládacích prvků v WPF a mnoha způsoby lze představit jako ekvivalent popisovače okna (HWND) v modelu aplikace Win32.It also serves as the entry point for writing new controls in WPF, and in many ways can be thought of as an equivalent of a window handle (HWND) in the Win32 application model.

VisualObjekt je základní objekt WPF, jehož primární role má poskytnout podporu vykreslování.The Visual object is a core WPF object, whose primary role is to provide rendering support. Ovládací prvky uživatelského rozhraní, například Button a TextBox , jsou odvozeny z Visual třídy a používají Visual definované vlastnosti pro uchování jejich dat vykreslování.User interface controls, such as Button and TextBox, derive from the Visual class, and use the Visual defined properties for persisting their rendering data. VisualObjekt poskytuje podporu pro následující:The Visual object provides support for the following:

  • Zobrazení výstupu: vykreslení trvalého a serializovaného obsahu vykreslování vizuálu.Output display: Rendering the persisted, serialized drawing content of a visual.

  • Transformace: provádění transformací na vizuálu.Transformations: Performing transformations on a visual.

  • Oříznutí: poskytuje podporu oblasti oříznutí pro vizuál.Clipping: Providing clipping region support for a visual.

  • Testování přístupů: určení, zda je zadaná souřadnice (bod) nebo geometrie obsažena v mezích vizuálu.Hit testing: Determining whether a specified coordinate (point) or geometry is contained within the bounds of a visual.

  • Výpočty ohraničovacího rámečku: určení ohraničujícího obdélníku vizuálu.Bounding box calculations: Determining the bounding rectangle of a visual.

V rámci architektury Visual objekt nezahrnuje podporu pro jiné požadavky na vývoj aplikací/funkce WPF, které přímo nesouvisejí s jeho vykreslováním, jako například následující:Architecturally, the Visual object does not include support for other application development requirements / WPF features that are not immediately related to its rendering, such as the following:

  • Zpracování událostíEvent handling

  • LayoutLayout

  • StylyStyles

  • Datová vazbaData binding

  • GlobalizaceGlobalization

Visual je k dispozici jako veřejná abstraktní třída, ze které lze odvodit další třídy.Visual is provided as a public abstract class from which further classes can be derived. Následující ilustrace znázorňuje hierarchii existujících vizuálních objektů, které jsou definovány v architektuře WPF.The following illustration shows the hierarchy of the existing visual objects that are defined in the WPF architecture.

Diagram tříd odvozený z vizuálního objektuDiagram of classes derived from the Visual object
Hierarchie vizuálních třídVisual class hierarchy

V některých případech jsou členy, které jsou definovány jako chráněné v, Visual zpřístupněny jako snadněji přístupné členy s podobnými názvy v odvozené UIElement třídě.In some cases, members that are defined as protected in Visual are exposed as more readily accessible members with similar names in the derived UIElement class.

Další informace naleznete v tématu Přehled vykreslování grafiky WPF.For more information, see WPF Graphics Rendering Overview.

VisualMá omezený počet úrovní.A Visual has a limited number of levels. V předchozích verzích .NET Framework byla tato maximální hloubka 255.In previous versions of the .NET Framework, this maximum depth was 255. Toto omezení není dostačující pro některá rozložení, která mají ve vizuálním stromu mnoho úrovní.This limit is inadequate for some layouts that have many levels in the visual tree.

V .NET Framework 4 je maximální hloubka Visual 2047, což umožňuje mnohem hlubší vizuální stromy.In .NET Framework 4, the maximum depth of a Visual is 2047, which enables much deeper visual trees. Ve většině aplikací není dostatek místa v zásobníku pro procházení tolika úrovní a výsledek je StackOverflowException během rozložení.In most applications, there is not enough stack space to traverse so many levels, and the result is a StackOverflowException during layout. Pro výchozí velikost zásobníku je tato výjimka obvykle vyvolána, když je hloubka struktury přibližně 800, což odpovídá přibližně 190 vnořených TreeViewItem objektů.For the default stack size, this exception is usually thrown when the tree depth is approximately 800, which corresponds to about 190 nested TreeViewItem objects.

Pokud je tato výjimka vyvolána vaší aplikací a potřebujete mít hlubší vizuální strom, můžete zvětšit velikost zásobníku aplikace.If this exception is thrown by your application and you need to have a deeper visual tree, you can increase the application's stack size. Velikost zásobníku můžete zvětšit pomocí možnosti/STACK v době kompilace nebo pomocí nástroje nástroje Editbin.You can increase the size of the stack by using the /STACK option at compile time or by using the EDITBIN utility. Zvýšení velikosti zásobníku může mít vliv na výkon vaší aplikace.Increasing the stack size may affect your application's performance. Další informace najdete v tématu alokace zásobníku a nástroje EDITBIN možnosti.For more information, see Stack Allocations and EDITBIN Options.

Konstruktory

Visual()

Poskytuje základní inicializaci pro objekty odvozené od Visual třídy.Provides the base initialization for objects derived from the Visual class.

Vlastnosti

DependencyObjectType

Získá DependencyObjectType , který zabalí typ CLR této instance.Gets the DependencyObjectType that wraps the CLR type of this instance.

(Zděděno od DependencyObject)
Dispatcher

Získá Dispatcher přidružený k DispatcherObject .Gets the Dispatcher this DispatcherObject is associated with.

(Zděděno od DispatcherObject)
IsSealed

Načte hodnotu, která označuje, jestli je tato instance aktuálně zapečetěná (jen pro čtení).Gets a value that indicates whether this instance is currently sealed (read-only).

(Zděděno od DependencyObject)
VisualBitmapEffect
Zastaralé.
Zastaralé.

Získá nebo nastaví BitmapEffect hodnotu pro Visual .Gets or sets the BitmapEffect value for the Visual.

VisualBitmapEffectInput
Zastaralé.
Zastaralé.

Získá nebo nastaví BitmapEffectInput hodnotu pro Visual .Gets or sets the BitmapEffectInput value for the Visual.

VisualBitmapScalingMode

Získá nebo nastaví BitmapScalingMode pro Visual .Gets or sets the BitmapScalingMode for the Visual.

VisualCacheMode

Získá nebo nastaví reprezentaci v mezipaměti Visual .Gets or sets a cached representation of the Visual.

VisualChildrenCount

Získá počet podřízených prvků pro Visual .Gets the number of child elements for the Visual.

VisualClearTypeHint

Získá nebo nastaví ClearTypeHint , který určuje, jak je technologie ClearType vykreslena v Visual .Gets or sets the ClearTypeHint that determines how ClearType is rendered in the Visual.

VisualClip

Získá nebo nastaví oblast oříznutí Visual jako Geometry hodnotu.Gets or sets the clip region of the Visual as a Geometry value.

VisualEdgeMode

Získá nebo nastaví režim Edge Visual jako EdgeMode hodnotu.Gets or sets the edge mode of the Visual as an EdgeMode value.

VisualEffect

Získá nebo nastaví efekt rastrového obrázku, který se má použít pro Visual .Gets or sets the bitmap effect to apply to the Visual.

VisualOffset

Získá nebo nastaví hodnotu posunutí vizuálního objektu.Gets or sets the offset value of the visual object.

VisualOpacity

Získá nebo nastaví neprůhlednost Visual .Gets or sets the opacity of the Visual.

VisualOpacityMask

Získá nebo nastaví Brush hodnotu, která představuje masku neprůhlednosti Visual .Gets or sets the Brush value that represents the opacity mask of the Visual.

VisualParent

Získá nadřazený vizuální strom vizuálního objektu.Gets the visual tree parent of the visual object.

VisualScrollableAreaClip

Získá nebo nastaví oříznutou rolovací oblast pro Visual .Gets or sets a clipped scrollable area for the Visual.

VisualTextHintingMode

Získá nebo nastaví TextHintingMode z Visual .Gets or sets the TextHintingMode of the Visual.

VisualTextRenderingMode

Získá nebo nastaví TextRenderingMode z Visual .Gets or sets the TextRenderingMode of the Visual.

VisualTransform

Získá nebo nastaví Transform hodnotu pro Visual .Gets or sets the Transform value for the Visual.

VisualXSnappingGuidelines

Získá nebo nastaví kolekci směrnice x-souřadnic (vertikálně).Gets or sets the x-coordinate (vertical) guideline collection.

VisualYSnappingGuidelines

Získá nebo nastaví kolekci obecných zásad y (horizontální).Gets or sets the y-coordinate (horizontal) guideline collection.

Metody

AddVisualChild(Visual)

Definuje vztah nadřazenosti-podřízenosti mezi dvěma vizuály.Defines the parent-child relationship between two visuals.

CheckAccess()

Určuje, zda má volající vlákno přístup DispatcherObject .Determines whether the calling thread has access to this DispatcherObject.

(Zděděno od DispatcherObject)
ClearValue(DependencyProperty)

Vymaže místní hodnotu vlastnosti.Clears the local value of a property. Vlastnost, která má být vyčištěna, je určena DependencyProperty identifikátorem.The property to be cleared is specified by a DependencyProperty identifier.

(Zděděno od DependencyObject)
ClearValue(DependencyPropertyKey)

Vymaže místní hodnotu vlastnosti jen pro čtení.Clears the local value of a read-only property. Vlastnost, která má být vymazána, je určena parametrem DependencyPropertyKey .The property to be cleared is specified by a DependencyPropertyKey.

(Zděděno od DependencyObject)
CoerceValue(DependencyProperty)

Převede hodnotu zadané vlastnosti závislosti.Coerces the value of the specified dependency property. To se provádí vyvoláním jakékoli CoerceValueCallback funkce určené v metadatech vlastnosti pro vlastnost závislosti, protože existuje při volání DependencyObject .This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(Zděděno od DependencyObject)
Equals(Object)

Určuje, zda je poskytnutý DependencyObject ekvivalent aktuální DependencyObject .Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Zděděno od DependencyObject)
FindCommonVisualAncestor(DependencyObject)

Vrací společného předchůdce dvou vizuálních objektů.Returns the common ancestor of two visual objects.

GetHashCode()

Získá kód hodnoty hash DependencyObject .Gets a hash code for this DependencyObject.

(Zděděno od DependencyObject)
GetLocalValueEnumerator()

Vytvoří specializovaný enumerátor pro zjištění, které vlastnosti závislosti mají lokálně nastavené hodnoty DependencyObject .Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(Zděděno od DependencyObject)
GetType()

Získá Type aktuální instanci.Gets the Type of the current instance.

(Zděděno od Object)
GetValue(DependencyProperty)

Vrátí aktuální platnou hodnotu vlastnosti závislosti v této instanci DependencyObject .Returns the current effective value of a dependency property on this instance of a DependencyObject.

(Zděděno od DependencyObject)
GetVisualChild(Int32)

Vrátí zadanou hodnotu Visual v nadřazeném prvku VisualCollection .Returns the specified Visual in the parent VisualCollection.

HitTestCore(GeometryHitTestParameters)

Určuje, zda je hodnota geometrie v mezích vizuálního objektu.Determines whether a geometry value is within the bounds of the visual object.

HitTestCore(PointHitTestParameters)

Určuje, zda je hodnota souřadnic bodu v mezích vizuálního objektu.Determines whether a point coordinate value is within the bounds of the visual object.

InvalidateProperty(DependencyProperty)

Znovu vyhodnotí platnou hodnotu pro zadanou vlastnost závislosti.Re-evaluates the effective value for the specified dependency property.

(Zděděno od DependencyObject)
IsAncestorOf(DependencyObject)

Určuje, zda je vizuální objekt nadřazeným objektem odvozeného vizuálu.Determines whether the visual object is an ancestor of the descendant visual object.

IsDescendantOf(DependencyObject)

Určuje, zda je vizuální objekt následníkem nadřazeného vizuálního objektu.Determines whether the visual object is a descendant of the ancestor visual object.

MemberwiseClone()

Vytvoří kopii aktuálního seznamu Object .Creates a shallow copy of the current Object.

(Zděděno od Object)
OnDpiChanged(DpiScale, DpiScale)

Volá se, když se změní rozlišení DPI, na kterém je toto zobrazení vykreslené.Called when the DPI at which this View is rendered changes.

OnPropertyChanged(DependencyPropertyChangedEventArgs)

Vyvolá se vždy, když byla aktualizována skutečná hodnota jakékoli vlastnosti závislosti DependencyObject .Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. Konkrétní vlastnost závislosti, která se změnila, je uvedena v datech události.The specific dependency property that changed is reported in the event data.

(Zděděno od DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

Volá se, když se VisualCollection upraví vizuální objekt.Called when the VisualCollection of the visual object is modified.

OnVisualParentChanged(DependencyObject)

Volá se, když se změní nadřazený objekt vizuálního objektu.Called when the parent of the visual object is changed.

PointFromScreen(Point)

Převede Point v souřadnicích obrazovky Point , které představují aktuální souřadnicový systém Visual .Converts a Point in screen coordinates into a Point that represents the current coordinate system of the Visual.

PointToScreen(Point)

Převede Point , který představuje aktuální souřadnicový systém Visual Point v souřadnicích obrazovky.Converts a Point that represents the current coordinate system of the Visual into a Point in screen coordinates.

ReadLocalValue(DependencyProperty)

Vrátí místní hodnotu vlastnosti závislosti, pokud existuje.Returns the local value of a dependency property, if it exists.

(Zděděno od DependencyObject)
RemoveVisualChild(Visual)

Odebere vztah nadřazenosti-podřízenosti mezi dvěma vizuály.Removes the parent-child relationship between two visuals.

SetCurrentValue(DependencyProperty, Object)

Nastaví hodnotu vlastnosti závislosti beze změny jejího zdroje hodnoty.Sets the value of a dependency property without changing its value source.

(Zděděno od DependencyObject)
SetValue(DependencyProperty, Object)

Nastaví místní hodnotu vlastnosti závislosti určenou identifikátorem vlastnosti závislosti.Sets the local value of a dependency property, specified by its dependency property identifier.

(Zděděno od DependencyObject)
SetValue(DependencyPropertyKey, Object)

Nastaví místní hodnotu vlastnosti závislosti jen pro čtení určenou DependencyPropertyKey identifikátorem vlastnosti závislosti.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(Zděděno od DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Vrátí hodnotu, která označuje, zda mají procesy serializace serializovat hodnotu pro poskytnutou vlastnost závislosti.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(Zděděno od DependencyObject)
ToString()

Vrátí řetězec, který představuje aktuální objekt.Returns a string that represents the current object.

(Zděděno od Object)
TransformToAncestor(Visual)

Vrátí transformaci, která se dá použít k transformaci souřadnic z na Visual zadaný Visual nadřazený objekt vizuálního objektu.Returns a transform that can be used to transform coordinates from the Visual to the specified Visual ancestor of the visual object.

TransformToAncestor(Visual3D)

Vrátí transformaci, která se dá použít k transformaci souřadnic z na Visual zadaný Visual3D nadřazený objekt vizuálního objektu.Returns a transform that can be used to transform coordinates from the Visual to the specified Visual3D ancestor of the visual object.

TransformToDescendant(Visual)

Vrátí transformaci, která se dá použít k transformaci souřadnic z na Visual zadaný Visual Object následník.Returns a transform that can be used to transform coordinates from the Visual to the specified visual object descendant.

TransformToVisual(Visual)

Vrátí transformaci, která se dá použít k transformaci souřadnic z na Visual zadaný vizuální objekt.Returns a transform that can be used to transform coordinates from the Visual to the specified visual object.

VerifyAccess()

Vynutilo, aby volající vlákno měl přístup DispatcherObject .Enforces that the calling thread has access to this DispatcherObject.

(Zděděno od DispatcherObject)

Platí pro

Viz také