Visual Clase

Definición

Proporciona la compatibilidad de representación de WPF, que incluye la prueba de posicionamiento, la transformación de coordinación y los cálculos del rectángulo de selección.

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
Herencia
Derivado

Comentarios

La Visual clase es la abstracción básica de la que se deriva cada FrameworkElement objeto. También sirve como punto de entrada para escribir nuevos controles en WPF y, de muchas maneras, se puede considerar como un equivalente de un identificador de ventana (HWND) en el modelo de aplicación Win32.

El Visual objeto es un objeto WPF principal, cuyo rol principal es proporcionar compatibilidad con la representación. Los controles de interfaz de usuario, como Button y TextBox, derivan de la Visual clase y usan las Visual propiedades definidas para conservar sus datos de representación. El Visual objeto proporciona compatibilidad con lo siguiente:

  • Presentación de salida: representación persistente, serializa el contenido de dibujo de un objeto visual.

  • Transformaciones: realizar transformaciones en un objeto visual.

  • Recorte: proporcionar soporte para una zona de recorte de un objeto visual.

  • Pruebas de posicionamiento: determinar si una coordenada especificada (punto) o geometría está contenida dentro de los límites de un objeto visual.

  • Cálculos de rectángulo de selección: determinar el rectángulo delimitador de un objeto visual.

Arquitectónicamente, el Visual objeto no incluye compatibilidad con otros requisitos de desarrollo de aplicaciones o características de WPF que no están inmediatamente relacionadas con su representación, como las siguientes:

  • Control de eventos

  • Layout

  • Estilos

  • Enlace de datos

  • Globalización

Visual se proporciona como una clase abstracta pública de la que se pueden derivar más clases. En la ilustración siguiente se muestra la jerarquía de los objetos visuales existentes definidos en la arquitectura de WPF.

Diagrama de clases derivadas del objeto Visual
Jerarquía de clase Visual

En algunos casos, los miembros que se definen como protegidos en Visual se exponen como miembros más fácilmente accesibles con nombres similares en la clase derivada UIElement .

Para más información, consulte Información general sobre la representación de gráficos en WPF.

Tiene Visual un número limitado de niveles. En versiones anteriores de la .NET Framework, esta profundidad máxima era 255. Este límite es inadecuado para algunos diseños que tienen muchos niveles en el árbol visual.

En .NET Framework 4, la profundidad máxima de un Visual es 2047, lo que permite árboles visuales mucho más profundos. En la mayoría de las aplicaciones, no hay suficiente espacio de pila para recorrer tantos niveles, y el resultado es durante StackOverflowException el diseño. Para el tamaño de pila predeterminado, esta excepción se produce normalmente cuando la profundidad del árbol es aproximadamente 800, que corresponde a unos 190 objetos anidados TreeViewItem .

Si la aplicación produce esta excepción y necesita tener un árbol visual más profundo, puede aumentar el tamaño de la pila de la aplicación. Puede aumentar el tamaño de la pila mediante la opción /STACK en tiempo de compilación o mediante la utilidad EDITBIN. Aumentar el tamaño de la pila puede afectar al rendimiento de la aplicación. Para obtener más información, vea Asignaciones de pila y opciones EDITBIN.

Constructores

Visual()

Proporciona la inicialización base de los objetos derivados de la clase Visual.

Propiedades

DependencyObjectType

Obtiene el DependencyObjectType objeto que encapsula el tipo CLR de esta instancia.

(Heredado de DependencyObject)
Dispatcher

Obtiene el objeto Dispatcher al que está asociado DispatcherObject.

(Heredado de DispatcherObject)
IsSealed

Obtiene un valor que indica si esta instancia está actualmente sellada (es de solo lectura).

(Heredado de DependencyObject)
VisualBitmapEffect
Obsoleto.
Obsoleto.

Obtiene o establece el valor de BitmapEffect para Visual.

VisualBitmapEffectInput
Obsoleto.
Obsoleto.

Obtiene o establece el valor de BitmapEffectInput para Visual.

VisualBitmapScalingMode

Obtiene o establece el objeto BitmapScalingMode para Visual.

VisualCacheMode

Obtiene o establece una representación en caché del objeto Visual.

VisualChildrenCount

Obtiene el número de elementos secundarios del objeto Visual.

VisualClearTypeHint

Obtiene o establece el valor de ClearTypeHint que determina cómo se presenta ClearType en el objeto Visual.

VisualClip

Obtiene o establece la región de recorte del objeto Visual como valor de Geometry.

VisualEdgeMode

Obtiene o establece el modo de borde del objeto Visual como valor de EdgeMode.

VisualEffect

Obtiene o establece el efecto de imagen que se va a aplicar a Visual.

VisualOffset

Obtiene o establece el valor de desplazamiento del objeto visual.

VisualOpacity

Obtiene o establece la opacidad del objeto Visual.

VisualOpacityMask

Obtiene o establece el valor de Brush que representa la máscara de opacidad del objeto Visual.

VisualParent

Obtiene el objeto primario del árbol visual del objeto visual.

VisualScrollableAreaClip

Obtiene o establece un área de recorte desplazable del objeto Visual.

VisualTextHintingMode

Obtiene o establece TextHintingMode de Visual.

VisualTextRenderingMode

Obtiene o establece TextRenderingMode de Visual.

VisualTransform

Obtiene o establece el valor de Transform para Visual.

VisualXSnappingGuidelines

Obtiene o establece la colección de instrucciones de la coordenada X (vertical).

VisualYSnappingGuidelines

Obtiene o establece la colección de instrucciones de la coordenada y (horizontal).

Métodos

AddVisualChild(Visual)

Define la relación primario-secundario entre dos objetos visuales.

CheckAccess()

Determina si el subproceso de la llamada tiene acceso a DispatcherObject.

(Heredado de DispatcherObject)
ClearValue(DependencyProperty)

Borra el valor local de una propiedad. La propiedad que se va a borrar se especifica mediante un identificador DependencyProperty.

(Heredado de DependencyObject)
ClearValue(DependencyPropertyKey)

Borra el valor local de una propiedad de solo lectura. La propiedad que se va a borrar se especifica mediante un DependencyPropertyKey.

(Heredado de DependencyObject)
CoerceValue(DependencyProperty)

Convierte el valor de la propiedad de dependencia especificada. Esto se logra invocando cualquier función CoerceValueCallback especificada en los metadatos de la propiedad de dependencia tal como existe en la clase DependencyObject que llama.

(Heredado de DependencyObject)
Equals(Object)

Determina si un objeto DependencyObject proporcionado es equivalente al objeto DependencyObject actual.

(Heredado de DependencyObject)
FindCommonVisualAncestor(DependencyObject)

Devuelve el antecesor común de dos objetos visuales.

GetHashCode()

Obtiene un código hash de este objeto DependencyObject.

(Heredado de DependencyObject)
GetLocalValueEnumerator()

Crea un enumerador especializado para determinar qué propiedades de dependencia han establecido localmente los valores en DependencyObject.

(Heredado de DependencyObject)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
GetValue(DependencyProperty)

Devuelve el valor efectivo actual de una propiedad de dependencia en esta instancia de un DependencyObject.

(Heredado de DependencyObject)
GetVisualChild(Int32)

Devuelve el objeto Visual especificado de la colección VisualCollection primaria.

HitTestCore(GeometryHitTestParameters)

Determina si un valor geométrico está dentro de los límites del objeto visual.

HitTestCore(PointHitTestParameters)

Determina si un valor de coordenada de punto está dentro de los límites del objeto visual.

InvalidateProperty(DependencyProperty)

Vuelve a evaluar el valor efectivo para la propiedad de dependencia especificada.

(Heredado de DependencyObject)
IsAncestorOf(DependencyObject)

Determina si el objeto visual es un antecesor del objeto visual descendiente.

IsDescendantOf(DependencyObject)

Determina si el objeto visual es un descendiente del objeto visual antecesor.

MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
OnDpiChanged(DpiScale, DpiScale)

Llamado cuando cambia el valor de PPP en el que este cuadro de texto enriquecido se representa.

OnPropertyChanged(DependencyPropertyChangedEventArgs)

Se invoca cuando se actualiza el valor efectivo de alguna propiedad de dependencia en este DependencyObject. La propiedad de dependencia específica que cambió se notifica en los datos de evento.

(Heredado de DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

Se le llama cuando se modifica la colección VisualCollection del objeto visual.

OnVisualParentChanged(DependencyObject)

Se le llama cuando se cambia el objeto primario del objeto visual.

PointFromScreen(Point)

Convierte un objeto Point en coordenadas de pantalla en un objeto Point que representa el sistema de coordenadas actual de Visual.

PointToScreen(Point)

Convierte un objeto Point que representa el sistema de coordenadas actual del objeto Visual en un objeto Point de coordenadas de pantalla.

ReadLocalValue(DependencyProperty)

Devuelve el valor local de una propiedad de dependencia, si existe.

(Heredado de DependencyObject)
RemoveVisualChild(Visual)

Quita la relación primario-secundario entre dos objetos visuales.

SetCurrentValue(DependencyProperty, Object)

Establece el valor de una propiedad de dependencia sin cambiar el origen del valor.

(Heredado de DependencyObject)
SetValue(DependencyProperty, Object)

Establece el valor local de una propiedad de dependencia, especificado mediante el identificador de la propiedad de dependencia.

(Heredado de DependencyObject)
SetValue(DependencyPropertyKey, Object)

Establece el valor local de una propiedad de dependencia de solo lectura, especificado por el identificador DependencyPropertyKey de la propiedad de dependencia.

(Heredado de DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Devuelve un valor que indica si los procesos de serialización deben serializar el valor de la propiedad de dependencia especificada.

(Heredado de DependencyObject)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)
TransformToAncestor(Visual)

Devuelve una transformación que se puede usar para transformar las coordenadas desde el objeto Visual en el antecesor del objeto Visual especificado del objeto visual.

TransformToAncestor(Visual3D)

Devuelve una transformación que se puede usar para transformar las coordenadas desde el objeto Visual en el antecesor del objeto Visual3D especificado del objeto visual.

TransformToDescendant(Visual)

Devuelve una transformación que se puede usar para transformar las coordenadas desde el objeto Visual en el descendiente del objeto visual especificado.

TransformToVisual(Visual)

Devuelve una transformación que se puede usar para transformar las coordenadas desde el objeto Visual en el objeto visual especificado.

VerifyAccess()

Exige que el subproceso de la llamada tenga acceso a DispatcherObject.

(Heredado de DispatcherObject)

Se aplica a

Consulte también