Visual Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Offre il supporto per il rendering in WPF, che include hit testing, trasformazione delle coordinate e calcoli relativi al rettangolo di selezione.
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
- Ereditarietà
- Derivato
Commenti
La Visual classe è l'astrazione di base da cui deriva ogni FrameworkElement oggetto. Funge anche da punto di ingresso per la scrittura di nuovi controlli in WPF e in molti modi può essere considerato come un equivalente di un handle di finestra (HWND) nel modello di applicazione Win32.
L'oggetto Visual è un oggetto WPF di base, il cui ruolo primario consiste nel fornire supporto per il rendering. I controlli dell'interfaccia utente, ad esempio Button e TextBox, derivano dalla Visual classe e usano le proprietà definite per rendere persistenti i Visual dati di rendering. L'oggetto Visual fornisce il supporto per quanto segue:
Visualizzazione dell'output: eseguire il rendering del contenuto del disegno serializzato e salvato in modo permanente di un oggetto visivo.
Trasformazioni: eseguire trasformazioni su un oggetto visivo.
Ritaglio: offrire supporto dell'area di ritaglio per un oggetto visivo.
Hit testing: determinare se una coordinata specificata (punto) o geometria è contenuta nei limiti di un oggetto visivo.
Calcoli relativi al rettangolo di selezione: determinare il rettangolo delimitatore di un oggetto visivo.
L'oggetto Visual non include il supporto per altri requisiti di sviluppo dell'applicazione/funzionalità WPF che non sono immediatamente correlate al rendering, ad esempio quanto segue:
Gestione degli eventi
Layout
Stili
Associazione dati
Globalizzazione
Visual viene fornito come classe astratta pubblica da cui è possibile derivare altre classi. Nella figura seguente viene illustrata la gerarchia degli oggetti visivi esistenti definiti nell'architettura WPF.
Gerarchia delle classi visive
In alcuni casi, i membri definiti come protetti in Visual vengono esposti come membri più facilmente accessibili con nomi simili nella classe derivata UIElement .
Per altre informazioni, vedere Cenni preliminari sul rendering della grafica WPF.
Un Visual ha un numero limitato di livelli. Nelle versioni precedenti della .NET Framework, questa profondità massima era 255. Questo limite è inadeguato per alcuni layout con molti livelli nell'albero visivo.
In .NET Framework 4, la profondità massima di un Visual oggetto è 2047, che consente alberi visivi molto più profondi. Nella maggior parte delle applicazioni, lo spazio dello stack non è sufficiente per attraversare così tanti livelli e il risultato è un StackOverflowException durante il layout. Per le dimensioni predefinite dello stack, questa eccezione viene in genere generata quando la profondità dell'albero è circa 800, che corrisponde a circa 190 oggetti annidati TreeViewItem .
Se questa eccezione viene generata dall'applicazione e è necessario avere un albero visivo più profondo, è possibile aumentare le dimensioni dello stack dell'applicazione. È possibile aumentare le dimensioni dello stack usando l'opzione /STACK in fase di compilazione o usando l'utilità EDITBIN. L'aumento delle dimensioni dello stack può influire sulle prestazioni dell'applicazione. Per altre informazioni, vedere Allocazioni stack e opzioni EDITBIN.
Costruttori
Visual() |
Fornisce l'inizializzazione di base per oggetti derivati dalla classe Visual. |
Proprietà
DependencyObjectType |
Ottiene l'oggetto DependencyObjectType che esegue il wrapping del tipo CLR di questa istanza. (Ereditato da DependencyObject) |
Dispatcher |
Ottiene l'oggetto Dispatcher associato a DispatcherObject. (Ereditato da DispatcherObject) |
IsSealed |
Ottiene un valore che indica se l'istanza è attualmente sealed (di sola lettura). (Ereditato da DependencyObject) |
VisualBitmapEffect |
Obsoleta.
Obsoleta.
Ottiene o imposta il valore di BitmapEffect per Visual. |
VisualBitmapEffectInput |
Obsoleta.
Obsoleta.
Ottiene o imposta il valore di BitmapEffectInput per Visual. |
VisualBitmapScalingMode |
Ottiene o imposta l'oggetto BitmapScalingMode per Visual. |
VisualCacheMode |
Ottiene o imposta una rappresentazione nascosta dell'oggetto Visual. |
VisualChildrenCount |
Ottiene il numero di elementi figlio per l’oggetto Visual. |
VisualClearTypeHint |
Ottiene o imposta l'oggetto ClearTypeHint che determina come viene reso ClearType nell'oggetto Visual. |
VisualClip |
Ottiene o imposta l'area di ridimensionamento dell'oggetto Visual specificato sotto forma di valore Geometry. |
VisualEdgeMode |
Ottiene o imposta la modalità di bordo dell’oggetto Visual sotto forma di valore EdgeMode. |
VisualEffect |
Ottiene o imposta l'effetto bitmap da applicare all'oggetto Visual. |
VisualOffset |
Ottiene o imposta il valore di offset dell’oggetto visivo. |
VisualOpacity |
Ottiene o imposta l'opacità di Visual. |
VisualOpacityMask |
Ottiene o imposta il valore Brush che rappresenta la maschera di opacità dell’oggetto Visual. |
VisualParent |
Ottiene la struttura ad albero padre dell’oggetto visivo. |
VisualScrollableAreaClip |
Ottiene o imposta un'area scorrevole ritagliata per l'oggetto Visual. |
VisualTextHintingMode |
Ottiene o imposta l'oggetto TextHintingMode di Visual. |
VisualTextRenderingMode |
Ottiene o imposta l'oggetto TextRenderingMode di Visual. |
VisualTransform | |
VisualXSnappingGuidelines |
Ottiene o imposta la raccolta delle linee guida per la coordinata X (verticale). |
VisualYSnappingGuidelines |
Ottiene o imposta la raccolta delle linee guida per la coordinata y (orizzontale). |
Metodi
AddVisualChild(Visual) |
Definisce la relazione padre-figlio tra due elementi visivi. |
CheckAccess() |
Determina se il thread chiamante ha accesso a DispatcherObject. (Ereditato da DispatcherObject) |
ClearValue(DependencyProperty) |
Cancella il valore locale di una proprietà. La proprietà da cancellare è specificata da un identificatore DependencyProperty. (Ereditato da DependencyObject) |
ClearValue(DependencyPropertyKey) |
Cancella il valore locale di una proprietà di sola lettura. La proprietà da cancellare è specificata da un oggetto DependencyPropertyKey. (Ereditato da DependencyObject) |
CoerceValue(DependencyProperty) |
Assegna forzatamente il valore della proprietà di dipendenza specificata. Questa operazione viene eseguita richiamando qualsiasi funzione CoerceValueCallback specificata nei metadati della proprietà di dipendenza esistente nell'oggetto DependencyObject chiamante. (Ereditato da DependencyObject) |
Equals(Object) |
Determina se l'oggetto DependencyObject specificato equivale all'oggetto DependencyObject corrente. (Ereditato da DependencyObject) |
FindCommonVisualAncestor(DependencyObject) |
Restituisce il predecessore comune di due oggetti visivi. |
GetHashCode() |
Ottiene un codice hash per l'oggetto DependencyObject. (Ereditato da DependencyObject) |
GetLocalValueEnumerator() |
Crea un enumeratore specializzato per determinare le proprietà di dipendenza che presentano valori impostati localmente nell'oggetto DependencyObject. (Ereditato da DependencyObject) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
GetValue(DependencyProperty) |
Restituisce il valore effettivo corrente di una proprietà di dipendenza in questa istanza di DependencyObject. (Ereditato da DependencyObject) |
GetVisualChild(Int32) |
Restituisce l’oggetto Visual specificato nell’oggetto VisualCollection padre. |
HitTestCore(GeometryHitTestParameters) |
Determina se il valore di una geometria si trova all'interno dei limiti dell’oggetto visivo. |
HitTestCore(PointHitTestParameters) |
Determina se il valore di coordinata di un punto è all'interno dei limiti dell’oggetto visivo. |
InvalidateProperty(DependencyProperty) |
Valuta di nuovo il valore effettivo della proprietà di dipendenza specificata. (Ereditato da DependencyObject) |
IsAncestorOf(DependencyObject) |
Determina se l'oggetto visivo è un predecessore dell'oggetto visivo discendente. |
IsDescendantOf(DependencyObject) |
Determina se l'oggetto visivo è un discendente dell'oggetto visivo predecessore. |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
OnDpiChanged(DpiScale, DpiScale) |
Chiamato in caso di variazione del valore DPI usato per il rendering della vista. |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Richiamato ogni volta che viene aggiornato il valore effettivo di qualsiasi proprietà di dipendenza in DependencyObject. La proprietà di dipendenza specifica modificata viene indicata nei dati dell'evento. (Ereditato da DependencyObject) |
OnVisualChildrenChanged(DependencyObject, DependencyObject) |
Viene chiamato quando l'oggetto VisualCollection dell’oggetto visivo viene modificato. |
OnVisualParentChanged(DependencyObject) |
Chiamato quando l’elemento padre dell’oggetto visivo viene modificato. |
PointFromScreen(Point) |
Converte un oggetto Point sotto forma di coordinate dello schermo in un oggetto Point che rappresenta il sistema di coordinate corrente dell’oggetto Visual. |
PointToScreen(Point) |
Converte un oggetto Point che rappresenta il sistema di coordinate corrente dell’oggetto Visual in un oggetto Point sotto forma di coordinate dello schermo. |
ReadLocalValue(DependencyProperty) |
Restituisce il valore locale di una proprietà di dipendenza, se esistente. (Ereditato da DependencyObject) |
RemoveVisualChild(Visual) |
Rimuove la relazione padre-figlio tra due elementi visivi. |
SetCurrentValue(DependencyProperty, Object) |
Imposta il valore di una proprietà di dipendenza senza modificare l'origine del valore. (Ereditato da DependencyObject) |
SetValue(DependencyProperty, Object) |
Imposta il valore locale di una proprietà di dipendenza, specificato dal relativo identificatore della proprietà di dipendenza. (Ereditato da DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Imposta il valore locale di una proprietà di dipendenza di sola lettura, specificato dall'identificatore DependencyPropertyKey della proprietà di dipendenza. (Ereditato da DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Restituisce un valore che indica se i processi di serializzazione devono serializzare il valore della proprietà di dipendenza specificata. (Ereditato da DependencyObject) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
TransformToAncestor(Visual) |
Restituisce una funzione di trasformazione utilizzabile per trasformare le coordinate dall'oggetto Visual al predecessore Visual specificato dell’oggetto visivo. |
TransformToAncestor(Visual3D) |
Restituisce una funzione di trasformazione utilizzabile per trasformare le coordinate dall'oggetto Visual al predecessore Visual3D specificato dell’oggetto visivo. |
TransformToDescendant(Visual) |
Restituisce una funzione di trasformazione utilizzabile per trasformare le coordinate dall'oggetto Visual al discendente specificato dell’oggetto visivo. |
TransformToVisual(Visual) |
Restituisce una funzione di trasformazione utilizzabile per trasformare le coordinate dall'oggetto Visual all’oggetto visivo specificato. |
VerifyAccess() |
Impone che il thread chiamante abbia accesso a DispatcherObject. (Ereditato da DispatcherObject) |