Visual Class

Definition

Fornece suporte à renderização no WPF, que inclui teste de clique, transformação de coordenadas e cálculos da caixa delimitadora.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
Inheritance
Derived

Remarks

A classe Visual é a abstração básica da qual cada objeto de FrameworkElement deriva.The Visual class is the basic abstraction from which every FrameworkElement object derives. Ele também serve como ponto de entrada para escrever novos controles em WPFWPF, e de várias maneiras podem ser considerados como um equivalente de um identificador de janela (HWND) no modelo de aplicativo Win32Win32.It also serves as the entry point for writing new controls in WPFWPF, and in many ways can be thought of as an equivalent of a window handle (HWND) in the Win32Win32 application model.

O objeto Visual é um objeto WPFWPF principal, cuja função principal é fornecer suporte à renderização.The Visual object is a core WPFWPF object, whose primary role is to provide rendering support. Controles de interface do usuário, como Button e TextBox, derivam da classe Visual e usam as propriedades definidas Visual para persistir seus dados de renderização.User interface controls, such as Button and TextBox, derive from the Visual class, and use the Visual defined properties for persisting their rendering data. O objeto Visual fornece suporte para o seguinte:The Visual object provides support for the following:

  • Exibição de saída: renderização do conteúdo de desenho persistentes e serializado de um visual.Output display: Rendering the persisted, serialized drawing content of a visual.

  • Transformações: executando transformações em um Visual.Transformations: Performing transformations on a visual.

  • Recorte: dar suporte à área de recorte para um visual.Clipping: Providing clipping region support for a visual.

  • Teste de clique: determinando se uma coordenada (ponto) ou geometria especificada está contida nos limites de um Visual.Hit testing: Determining whether a specified coordinate (point) or geometry is contained within the bounds of a visual.

  • Cálculos de caixa delimitadora: determinar o retângulo delimitador de um visual.Bounding box calculations: Determining the bounding rectangle of a visual.

Em termos de arquitetura, o objeto Visual não inclui suporte a outros requisitos de desenvolvimento de aplicativos/WPFWPF recursos que não estão imediatamente relacionados ao seu processamento, como o seguinte:Architecturally, the Visual object does not include support for other application development requirements / WPFWPF features that are not immediately related to its rendering, such as the following:

  • Manipulação de eventosEvent handling

  • LayoutLayout

  • EstilosStyles

  • Associação de dadosData binding

  • GlobalizaçãoGlobalization

Visual é fornecida como uma classe abstrata pública da qual outras classes podem ser derivadas.Visual is provided as a public abstract class from which further classes can be derived. A ilustração a seguir mostra a hierarquia dos objetos visuais existentes que são definidos na arquitetura de WPFWPF.The following illustration shows the hierarchy of the existing visual objects that are defined in the WPFWPF architecture.

Diagrama de classes derivadas do objeto visualDiagram of classes derived from the Visual object
Hierarquia de classes visuaisVisual class hierarchy

Em alguns casos, os membros definidos como protegidos no Visual são expostos como membros mais prontamente acessíveis com nomes semelhantes na classe derivada de UIElement.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.

Para obter mais informações, consulte Visão geral de renderização de gráficos do WPF.For more information, see WPF Graphics Rendering Overview.

Um Visual tem um número limitado de níveis.A Visual has a limited number of levels. Nas versões anteriores do .NET Framework, essa profundidade máxima era 255.In previous versions of the .NET Framework, this maximum depth was 255. Esse limite é inadequado para alguns layouts que têm muitos níveis na árvore visual.This limit is inadequate for some layouts that have many levels in the visual tree.

Em .NET Framework 4.NET Framework 4, a profundidade máxima de um Visual é 2047, o que permite árvores visuais muito mais profundas.In .NET Framework 4.NET Framework 4, the maximum depth of a Visual is 2047, which enables much deeper visual trees. Na maioria dos aplicativos, não há espaço suficiente na pilha para atravessar tantos níveis, e o resultado é um StackOverflowException durante o layout.In most applications, there is not enough stack space to traverse so many levels, and the result is a StackOverflowException during layout. Para o tamanho de pilha padrão, essa exceção geralmente é gerada quando a profundidade da árvore é de aproximadamente 800, que corresponde a cerca de 190 objetos TreeViewItem aninhados.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.

Se essa exceção for gerada pelo seu aplicativo e você precisar ter uma árvore visual mais profunda, você poderá aumentar o tamanho da pilha do aplicativo.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. Você pode aumentar o tamanho da pilha usando a opção/STACK no momento da compilação ou usando o utilitário EDITBIN.You can increase the size of the stack by using the /STACK option at compile time or by using the EDITBIN utility. Aumentar o tamanho da pilha pode afetar o desempenho do aplicativo.Increasing the stack size may affect your application's performance. Para obter mais informações, consulte Opções de alocações de pilha e EDITBIN.For more information, see Stack Allocations and EDITBIN Options.

Constructors

Visual()

Fornece a inicialização de base para objetos derivados da classe Visual.Provides the base initialization for objects derived from the Visual class.

Properties

DependencyObjectType

Obtém o DependencyObjectType que encapsula o tipo CLRCLR dessa instância.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(Inherited from DependencyObject)
Dispatcher

Obtém o Dispatcher ao qual este DispatcherObject está associado.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
IsSealed

Obtém um valor que indica se essa instância está validada no momento (somente leitura).Gets a value that indicates whether this instance is currently sealed (read-only).

(Inherited from DependencyObject)
VisualBitmapEffect

Obtém ou define o valor BitmapEffect para o Visual.Gets or sets the BitmapEffect value for the Visual.

VisualBitmapEffectInput

Obtém ou define o valor BitmapEffectInput para o Visual.Gets or sets the BitmapEffectInput value for the Visual.

VisualBitmapScalingMode

Obtém ou define o BitmapScalingMode do Visual.Gets or sets the BitmapScalingMode for the Visual.

VisualCacheMode

Obtém ou define uma representação armazenada em cache do Visual.Gets or sets a cached representation of the Visual.

VisualChildrenCount

Obtém o número de elementos filhos do Visual.Gets the number of child elements for the Visual.

VisualClearTypeHint

Obtém ou define o ClearTypeHint que determina como o ClearType é renderizado no Visual.Gets or sets the ClearTypeHint that determines how ClearType is rendered in the Visual.

VisualClip

Obtém ou define a região de corte do Visual como um valor Geometry.Gets or sets the clip region of the Visual as a Geometry value.

VisualEdgeMode

Obtém ou define o modo de borda do Visual com um valor EdgeMode.Gets or sets the edge mode of the Visual as an EdgeMode value.

VisualEffect

Obtém ou define o efeito de bitmap a ser aplicado ao Visual.Gets or sets the bitmap effect to apply to the Visual.

VisualOffset

Obtém ou define o valor de deslocamento do objeto visual.Gets or sets the offset value of the visual object.

VisualOpacity

Obtém ou define a opacidade do Visual.Gets or sets the opacity of the Visual.

VisualOpacityMask

Obtém ou define o valor Brush que representa a máscara de opacidade do Visual.Gets or sets the Brush value that represents the opacity mask of the Visual.

VisualParent

Obtém o pai da árvore visual do objeto visual.Gets the visual tree parent of the visual object.

VisualScrollableAreaClip

Obtém ou define uma área rolável recortada para o Visual.Gets or sets a clipped scrollable area for the Visual.

VisualTextHintingMode

Obtém ou define o TextHintingMode do Visual.Gets or sets the TextHintingMode of the Visual.

VisualTextRenderingMode

Obtém ou define o TextRenderingMode do Visual.Gets or sets the TextRenderingMode of the Visual.

VisualTransform

Obtém ou define o valor Transform para o Visual.Gets or sets the Transform value for the Visual.

VisualXSnappingGuidelines

Obtém ou define a coleção de diretrizes (vertical) da coordenada X.Gets or sets the x-coordinate (vertical) guideline collection.

VisualYSnappingGuidelines

Obtém ou define a coleção de diretrizes (horizontal) da coordenada y.Gets or sets the y-coordinate (horizontal) guideline collection.

Methods

AddVisualChild(Visual)

Define a relação pai-filho entre dois visuais.Defines the parent-child relationship between two visuals.

CheckAccess()

Determina se o thread de chamada tem acesso a este DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
ClearValue(DependencyProperty)

Limpa o valor local de uma propriedade.Clears the local value of a property. A propriedade a ser limpa é especificada por um identificador DependencyProperty.The property to be cleared is specified by a DependencyProperty identifier.

(Inherited from DependencyObject)
ClearValue(DependencyPropertyKey)

Limpa o valor local de uma propriedade somente leitura.Clears the local value of a read-only property. A propriedade a ser limpa é especificada por um DependencyPropertyKey.The property to be cleared is specified by a DependencyPropertyKey.

(Inherited from DependencyObject)
CoerceValue(DependencyProperty)

Converte o valor da propriedade de dependência especificada.Coerces the value of the specified dependency property. Isso é feito invocando qualquer função CoerceValueCallback especificada nos metadados de propriedade para a propriedade de dependência, visto que ela existe na chamada a DependencyObject.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(Inherited from DependencyObject)
Equals(Object)

Determina se um DependencyObject fornecido é equivalente ao DependencyObject atual.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Inherited from DependencyObject)
FindCommonVisualAncestor(DependencyObject)

Retorna o ancestral comum de dois objetos visuais.Returns the common ancestor of two visual objects.

GetHashCode()

Obtém o código hash para esse DependencyObject.Gets a hash code for this DependencyObject.

(Inherited from DependencyObject)
GetLocalValueEnumerator()

Cria um enumerador especializado para determinar quais propriedades de dependência têm valores definidos localmente nessa DependencyObject.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(Inherited from DependencyObject)
GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Inherited from Object)
GetValue(DependencyProperty)

Retorna o valor efetivo atual de uma propriedade de dependência nessa instância de um DependencyObject.Returns the current effective value of a dependency property on this instance of a DependencyObject.

(Inherited from DependencyObject)
GetVisualChild(Int32)

Retorna o Visual especificado no VisualCollection pai.Returns the specified Visual in the parent VisualCollection.

HitTestCore(GeometryHitTestParameters)

Determina se um valor de geometria está dentro dos limites do objeto visual.Determines whether a geometry value is within the bounds of the visual object.

HitTestCore(PointHitTestParameters)

Determina se um valor de coordenadas de ponto está dentro dos limites do objeto visual.Determines whether a point coordinate value is within the bounds of the visual object.

InvalidateProperty(DependencyProperty)

Reavalia o valor efetivo para a propriedade de dependência especificada.Re-evaluates the effective value for the specified dependency property.

(Inherited from DependencyObject)
IsAncestorOf(DependencyObject)

Determina se o objeto visual é um ancestral do objeto visual descendente.Determines whether the visual object is an ancestor of the descendant visual object.

IsDescendantOf(DependencyObject)

Determina se o objeto visual é um descendente do objeto visual ancestral.Determines whether the visual object is a descendant of the ancestor visual object.

MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Inherited from Object)
OnDpiChanged(DpiScale, DpiScale)

Chamado quando o DPI em que esse modo de exibição é renderizado é alterada.Called when the DPI at which this View is rendered changes.

OnPropertyChanged(DependencyPropertyChangedEventArgs)

Invocado sempre que o valor efetivo de qualquer propriedade de dependência nesse DependencyObject for atualizado.Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. A propriedade de dependência específica que mudou é relatada os dados do evento.The specific dependency property that changed is reported in the event data.

(Inherited from DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject)

Chamado quando o VisualCollection de um objeto visual é modificado.Called when the VisualCollection of the visual object is modified.

OnVisualParentChanged(DependencyObject)

Chamado quando o pai do objeto visual for alterado.Called when the parent of the visual object is changed.

PointFromScreen(Point)

Converte um Point em coordenadas de tela em um Point que representa o sistema de coordenadas atual do Visual.Converts a Point in screen coordinates into a Point that represents the current coordinate system of the Visual.

PointToScreen(Point)

Converte um Point que representa o sistema de coordenadas atual do Visual em um Point nas coordenadas da tela.Converts a Point that represents the current coordinate system of the Visual into a Point in screen coordinates.

ReadLocalValue(DependencyProperty)

Retorna o valor local de uma propriedade de dependência, local, se houver.Returns the local value of a dependency property, if it exists.

(Inherited from DependencyObject)
RemoveVisualChild(Visual)

Remove a relação pai-filho entre dois visuais.Removes the parent-child relationship between two visuals.

SetCurrentValue(DependencyProperty, Object)

Define o valor da propriedade de dependência sem alterar a origem do valor.Sets the value of a dependency property without changing its value source.

(Inherited from DependencyObject)
SetValue(DependencyProperty, Object)

Define o valor local de uma propriedade de dependência, especificada pelo identificador da propriedade de dependência.Sets the local value of a dependency property, specified by its dependency property identifier.

(Inherited from DependencyObject)
SetValue(DependencyPropertyKey, Object)

Define o valor de uma propriedade de dependência somente leitura, especificada pelo identificador DependencyPropertyKey da propriedade de dependência.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(Inherited from DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Retorna um valor que indica se os processos de serialização devem serializar o valor da propriedade de dependência fornecida.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(Inherited from DependencyObject)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Inherited from Object)
TransformToAncestor(Visual)

Retorna uma transformação que pode ser usada para transformar as coordenadas do Visual para o ancestral Visual especificado do objeto visual.Returns a transform that can be used to transform coordinates from the Visual to the specified Visual ancestor of the visual object.

TransformToAncestor(Visual3D)

Retorna uma transformação que pode ser usada para transformar as coordenadas do Visual para o ancestral Visual3D especificado do objeto visual.Returns a transform that can be used to transform coordinates from the Visual to the specified Visual3D ancestor of the visual object.

TransformToDescendant(Visual)

Retorna uma transformação que pode ser usada para transformar as coordenadas do Visual até o descendente do objeto visual especificado.Returns a transform that can be used to transform coordinates from the Visual to the specified visual object descendant.

TransformToVisual(Visual)

Retorna uma transformação que pode ser usada para transformar as coordenadas do Visual até o objeto visual especificado.Returns a transform that can be used to transform coordinates from the Visual to the specified visual object.

VerifyAccess()

Impõe que o thread de chamada tenha acesso a este DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Applies to

See also